Continuous profiling, the OTel way (Grafana ❤️🔥 OTel Community Call #6)
Details
We’re back with the new Grafana ❤️🔥OpenTelemetry Community Call episode!
There’s a lot of “invisible” time inside every span - profiling in OpenTelemetry makes it visible at the code level. Join us to learn how to correlate profiles with traces and pinpoint real sources of latency.
OpenTelemetry has traditionally focused on system boundaries - request/response cycles, RPC calls, database queries, and service-to-service interactions. But a significant portion of latency often lives inside those boundaries: CPU-heavy functions, inefficient serialization, or just code paths doing some real complex work.
Metrics and traces don’t capture this well. From their perspective, it’s just unexplained time within a span and extra latency within the duration metric.
Profiling fills that gap.
It provides continuous, code-level visibility into where time is actually spent - typically visualized as flame graphs - and helps attribute latency to specific functions and execution paths.
In this episode, we explore profiling as the fourth signal in OpenTelemetry with Christian Simon, who works on the Grafana Pyroscope.
We’ll cover:
- What profiling adds beyond metrics, logs, and traces
- The current state of profiling in OpenTelemetry
- How to run profiling in production environments
- Correlating profiles with traces and metrics to attribute latency to code paths
This event will be livestreamed on YouTube and published on the same link after the fact: https://www.youtube.com/watch?v=N47wy9pp7Lo

