What is Grafana Beyla?
Grafana Beyla is an open source eBPF-based auto-instrumentation tool that helps you easily get started with application observability for Go, C/C++, Rust, Python, Ruby, Java, NodeJS, .NET, and more.
eBPF is used to capture RED metrics (Rate-Error-Duration) and basic trace spans for Linux HTTP/S and gRPC services – without any modifications to application code or configuration.
Why use Grafana Beyla?
How does Grafana Beyla work for eBPF auto-instrumentation?
What is eBPF?
eBPF technology allows for attaching programs to different points of the Linux kernel. eBPF programs run in privileged mode to allow inspecting runtime information from different parts of your kernel: system calls, network stack, and even inserting probes in your user space programs.
The eBPF programs are safe, as they are compiled for their own Virtual Machine instruction set and then can run in a sandbox environment that pre-verifies each loaded program for safe memory access and finite execution time.
After being verified, the eBPF binaries are compiled Just-In-Time (JIT) to the host native architecture (x86-64, ARM64, etc.) for efficient and fast execution.
The eBPF code is loaded from ordinary programs running in the user space, and both kernel and user space programs can share information through a set of communication mechanisms that are provided by the eBPF specification: ring buffers, arrays, hash maps, etc.
Built on open source, driven by the community
We’re excited to share our learnings and work with the open source community on this easy-to-use auto-instrumentation application observability tool.