This is documentation for the next version of Grafana Beyla documentation. For the latest stable release, go to the latest version.

Grafana Beyla
Overview
Instrumenting every service with a language SDK or agent takes time, and some services are hard or impossible to instrument that way. Beyla gives you a baseline of application observability across your services, in many languages, from one tool. You can then add OpenTelemetry SDKs where you need deeper detail.
Instrument applications without code changes
Beyla attaches eBPF probes to the Linux kernel and to your running services. It captures metrics and trace spans for HTTP/S and gRPC services, and for database and messaging clients such as SQL, Redis, and Kafka.
One tool for every language
Beyla instruments services written in Go, Java, .NET, Node.js, Python, Ruby, Rust, C/C++, and more. Beyla observes requests at the kernel level, so it can also instrument services that don’t have an OpenTelemetry or Prometheus SDK. Run Beyla on Linux hosts, in containers, in Kubernetes, or as part of Grafana Alloy.
Built on open standards
Send Beyla data to Grafana Cloud, Grafana Alloy, an OpenTelemetry Collector, Prometheus, or another compatible backend. In Kubernetes, Beyla adds metadata such as Pod and namespace names to your metrics and traces, so you can find which workload has a problem.
Part of OpenTelemetry
Grafana Labs donated Beyla to the OpenTelemetry project in 2025 as OpenTelemetry eBPF Instrumentation (OBI). Beyla is the Grafana Labs distribution of OBI, with extra features for the Grafana ecosystem.
Explore
Find the topics you need to set up, configure, and use Beyla: