Verify the Linux kernel is 5.8 or later with BTF enabled (most distros enable BTF by default from kernel 5.14+); check with ls /sys/kernel/btf/vmlinux
Run Beyla as a sidecar container or DaemonSet with the BEYLA_OPEN_PORT or BEYLA_EXECUTABLE_NAME environment variable set to identify the target process
Configure Beyla's exporter section to send OTLP traces and metrics to an OTel Collector or Grafana Cloud endpoint, or use the Prometheus exporter for a local scrape
To use Beyla inside Grafana Alloy, add a beyla.ebpf block specifying open_port or exe_path, a kubernetes metadata block for pod enrichment, and a forward_to pointing to your otelcol.exporter
Beyla automatically emits http.server.request.duration, rpc.server.duration, and related OTel semantic convention metrics; import the provided Grafana dashboard for RED visualization
Enable trace context propagation in Beyla so that eBPF-captured spans carry the same traceparent as application-level spans, allowing correlation in Tempo or Jaeger
Known gotchas
Beyla requires running with sufficient Linux capabilities (CAP_SYS_ADMIN or CAP_BPF + CAP_PERFMON); in Kubernetes set securityContext.privileged: true or grant the specific capabilities
eBPF uprobes work on compiled binaries; interpreted languages like Python or Ruby have limited or no support for all instrumentation types — check the Beyla compatibility matrix for your runtime
Beyla 2.5+ is based on the upstream OpenTelemetry eBPF Instrumentation project; configuration keys changed from earlier versions, so review the migration guide before upgrading
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp