IngestionProfiles
Continuous Profiling
OpenObserve accepts OpenTelemetry Profiles over OTLP as a fourth telemetry signal, alongside logs, metrics, and traces. Use it to see which functions consume CPU, allocate memory, or wait on locks — information that traces and metrics do not include.
Choose an integration
| Language | Path |
|---|---|
| Java | async-profiler |
| Go | pprof, eBPF profiler |
| Rust | pprof, eBPF profiler |
| Any OTLP source | OTLP / Collector |
In this section
- OTLPSend OpenTelemetry Profiles to OpenObserve over OTLP/HTTP or OTLP/gRPC using the OpenTelemetry Collector.
- JavaSend Java CPU, allocation, and lock profiles from async-profiler to OpenObserve as OTLP Profiles.
- GoSend Go profiles to OpenObserve with pprof plus the Collector, or with the OpenTelemetry eBPF profiler.
- RustSend Rust CPU profiles to OpenObserve with pprof plus the Collector, or sample on-CPU stacks with the OpenTelemetry eBPF profiler.
- eBPF profilerCapture whole-node CPU profiles for Go, Rust, and other native runtimes with otelcol-ebpf-profiler and export OTLP Profiles to OpenObserve.
Need some help?
- Join our Community Slack
- Or Contact support
Was this page helpful?
Last updated on