Now that [Profiling in OpenTelemetry has entered the Alpha stage], it is time to start implementating it in SDKs and bring back feedback coming from this implementation phase to the profiling SIG. This issue acts as the umbrella issue to track the progress in various SDKs, please make sure to add issues to this issue that track support for each language.
| Language |
Profiles support status |
Trace/span ID correlation with eBPF profiler |
Tracking issue |
| C++ |
Not started. |
Not implemented. Via thread-context-sharing. |
|
| C#/.NET |
Not started. |
Not implemented. Likely via thread-context-sharing. |
|
| Erlang/Elixir |
Not started. |
Not implemented. Unclear whether it can be achieved via thread-context-sharing, tbd. |
|
| Go |
Not started. |
✅ Native support for goroutine labels already contributed to ebpf profiler by Polar Signals |
|
| Java |
Development. Planned: JFR-based CPU + allocation profiles via the Java agent. JFR events shim currently in opentelemetry-java-contrib. |
Not implemented. Native extension + thread-context-sharing |
|
| JavaScript |
Not started. |
Not implemented. Polar Signals has a battle-tested existing solution. |
open-telemetry/opentelemetry-js#6500 |
| Kotlin (Android) |
Not started. |
Not applicable? |
|
| PHP |
Not started. |
Not implemented. Unclear whether thread-context-sharing helps, tbd. |
|
| Python |
Not started. |
Not implemented. Likely via 3.14's PyContext_AddWatcher combined with thread-context-sharing. |
|
| Ruby |
Not started. |
Not implemented. |
|
| Rust |
Not started. |
Not implemented. Via thread-context-sharing. |
open-telemetry/opentelemetry-rust#3460 |
| Swift |
Not started. |
Not implemented. Via thread-context-sharing. |
|
Now that [Profiling in OpenTelemetry has entered the Alpha stage], it is time to start implementating it in SDKs and bring back feedback coming from this implementation phase to the profiling SIG. This issue acts as the umbrella issue to track the progress in various SDKs, please make sure to add issues to this issue that track support for each language.
PyContext_AddWatchercombined with thread-context-sharing.