Instrumenting Java with eBPF: TLS, Threads, and OBI (OpenTelemetry eBPF Instrumentation) @Grafana
Instrumenting Java with eBPF: TLS, Threads, and OBI (OpenTelemetry eBPF Instrumentation)  @Grafana
Uploaded May 2026 | Updated September 2026, 2 weeks ago
Instrumenting Java with eBPF has long been a hard problem — dynamically compiled JVM code, thread pools, and Java's own TLS stack all block standard eBPF uprobes. This GrafanaCON talk shows exactly how Grafana Beyla (now donated to OpenTelemetry as OBI) solves it.

Nikola Grcevski (Grafana Labs) and Endre Sara (Causely) walk through why Java resists kernel-level instrumentation, then explain the technical breakthrough that makes it work: a tiny, dynamically-injected Java agent that instruments only TLS and thread context — no application code changes required. A key insight is using encrypted buffer bytes as a lookup key to bridge Java's SSL engine with the underlying socket, resolving the async gap in frameworks like Netty. Endre shares real-world examples across Spring Boot, managed Postgres on AWS RDS, MSK Kafka over TLS, and Quarkus. The talk closes with an honest comparison of eBPF vs. the Java OTel SDK agent — they're complementary: Beyla delivers zero-touch day-0 coverage across all apps including third-party and GraalVM native images, while the Java agent handles custom business metrics where needed.

0:00 Introduction
0:36 Why Java Is Uniquely Difficult for eBPF
3:06 The TLS Problem in Java
5:57 OpenTelemetry eBPF Instrumentation (OBI)
10:05 Solving TLS with a Dynamically-Injected Java Agent
13:31 How TLS Buffer Correlation Works
15:12 Real-World Examples
16:54 Trade-offs: What Works and What Doesn't Yet
19:11 eBPF vs Java Agent: When to Use Each
21:35 Key Takeaways

Links/resources:
Grafana Beyla (OBI) GitHub: github.com/grafana/beyla
Get started with the Grafana Cloud forever-free tier: grafana.com/g/cloud
Have a question? Ask Grot, your AI helper: grafana.com/grot
Reach out in our community forums: https://gra.fan/communityyf

---
Thanks for watching!

👍 Was this video helpful? Like and subscribe to our channel for more videos.

Connect with Grafana Labs:
X: (twitter.com/grafana)
LinkedIn: (linkedin.com/company/grafana-labs/)
Facebook: (facebook.com/grafana)

#Grafana #Observability #Beyla #eBPF #OpenTelemetry
Instrumenting Java with eBPF: TLS, Threads, and OBI (OpenTelemetry eBPF Instrumentation)GrafanaCON 2026 Golden Grot Awards Ceremony: Aurora Chaser, Blue Ghost Mission 1, AI InnovationsHeres How an E-bike Company Observes Their Entire Business with Grafana | Business ObservabilityContinuous profiling, the OpenTelemetry way (Grafana ❤️‍🔥 OpenTelemetry Community Call #7)AI Community Call LIVE from GrafanaCON 2026Load Testing in Production: JustEatTakeaway.com and Skips Grafana Cloud K6 Story“I Didn’t Expect Grafana to Run Power Stations…” | Big Tent S3 E5How Grafana Hackathons Turn Weird Ideas into Real Features (Birds, Agents & More) | Big Tent S3E4Observability and AI explained - Grafana LabsGrafana Pyroscope: Source Code Integration - Java & Python Preview (January 2026 Community Call)Grafana 13 TL;DR — What’s New (and Worth Your Time)k8s-monitoring-helm Chart Office Hours (February 2026)
Grafana |

Instrumenting Java with eBPF: TLS, Threads, and OBI (OpenTelemetry eBPF Instrumentation)

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER