Building on the foundation of OpenTelemetry eBPF Instrumentation: what’s new in Grafana Beyla 2.5
Earlier this year, Grafana Labs donated Grafana Beyla — our open source eBPF-based, zero-code instrumentation tool — to OpenTelemetry under the new project name OpenTelemetry eBPF Instrumentation. In addition to reflecting our deep and long-standing commitment to the OpenTelemetry project, the donation marked a significant milestone in the evolution of zero-code eBPF instrumentation within the open source community at large.
As part of the donation, we also announced that Beyla will continue to exist as Grafana Labs’ distribution of the upstream OpenTelemetry eBPF Instrumentation (commonly referred to as OBI). And now, we’re delivering on our commitment to build on the foundation of OpenTelemetry eBPF Instrumentation with the release of Beyla 2.5 — the first Beyla release where we’re directly vendoring most of the code from the upstream OpenTelemetry eBPF Instrumentation repository that Grafana Labs proudly donated.
By vendoring the upstream code, we ensure that:
- Innovation flows both ways: Features developed in the OpenTelemetry project benefit Beyla users immediately, while Beyla-specific enhancements can be contributed back to the community.
- Compatibility remains strong: Beyla stays aligned with OpenTelemetry standards and practices.
- Community contributions matter: The broader OpenTelemetry community can contribute to the core instrumentation engine that powers Beyla.
What’s new in Beyla 2.5?
The updates in Beyla 2.5 reflect our commitment to keeping the OSS project fully aligned with the broader OpenTelemetry ecosystem, while maintaining the ease of use and powerful features our users have come to expect, like easy onboarding with Grafana Cloud and seamless integration with Grafana Alloy.
Let’s take a closer look at what’s new.
MongoDB protocol support
With the help of new community contributors to the upstream OBI project, database observability is taking a major leap forward with the new MongoDB protocol support.
For any programming language that performs client calls using the protocol — such as Go, Python, and Java — you can now automatically capture MongoDB operations without any code changes or SDK integration. This means you can finally get visibility into your MongoDB queries, connection patterns, and performance characteristics across your entire application stack.
Whether you’re running legacy applications, microservices, or complex distributed systems that rely on MongoDB, Beyla now provides the same zero-effort instrumentation that has made it popular for HTTP and gRPC services.
JSON-RPC support for Go applications
The blockchain and cryptocurrency ecosystem heavily relies on JSON-RPC for communication between services. With Beyla 2.5, Go applications using JSON-RPC protocols are now automatically instrumented, providing complete visibility into these often complex and critical service interactions.
This feature addresses a real gap in the observability ecosystem. With Beyla’s eBPF-based approach, we can deliver this functionality quickly and make it work universally for any application that uses JSON-RPC, regardless of the underlying client library implementation.
Manual span support for Go applications
While Beyla’s strength lies in automatic instrumentation, we recognize that sometimes you need more granular control over your observability data. Beyla 2.5 introduces the ability to add manual spans to Go applications, giving you the best of both worlds: comprehensive automatic instrumentation combined with the flexibility to add custom observability points where they matter most.
This feature enables you to instrument business logic, add custom attributes, or create spans for operations that might not be automatically detected by eBPF. The manual spans seamlessly integrate with Beyla’s automatic instrumentation, creating a complete picture of your application’s behavior.
Enhanced NodeJS distributed tracing
Building on our groundbreaking distributed tracing capabilities introduced in Beyla 2.0, version 2.5 brings significant improvements to NodeJS support. The enhanced context propagation ensures more reliable trace correlation across NodeJS services, providing better visibility into complex, polyglot distributed systems.
These improvements are particularly valuable for organizations running mixed technology stacks where NodeJS services need to participate in traces that span multiple programming languages and frameworks. The enhanced support means fewer broken trace chains and more complete visibility into your service interactions.
Survey mode for service discovery
One of the biggest challenges in observability is knowing what you don’t know. Beyla 2.5 introduces a survey mode that helps you discover services and protocols running in your environment without full instrumentation overhead.
This lightweight discovery mode scans your environment and reports on the services, protocols, and communication patterns it detects. It’s perfect for organizations looking to understand their application landscape before implementing comprehensive observability, or for identifying services that might benefit from Beyla’s automatic instrumentation.
Bug fixes and performance improvements
Beyla 2.5 includes a number of bug fixes and performance improvements based on community feedback and internal testing. These enhancements ensure a more stable and efficient observability experience across all supported platforms.
You can read more about these bug fixes and performance improvements in the Beyla 2.5 release notes.
Building on the OpenTelemetry foundation: how to get involved
Join us at OpenTelemetry eBPF Instrumentation SIG meetings to discuss the latest developments, share feedback, and collaborate on future enhancements. The meetings are held every Thursday at 13:00 UTC. You can join via this Zoom link, and check out the agenda here.
We look forward to driving further innovation around zero-effort instrumentation within the OTel community!