Review · AISource: Elastic
Elastic’s Linux profiling preview: Setup, requirements and limits
Elastic says its OpenTelemetry Profiling integration collects continuous CPU profiles on Linux through eBPF. It requires no application instrumentation or restarts, according to Elastic. [1] Version 0.0.1 is a technical preview. [1] OpenTelemetry Profiles remains Alpha. [3] Elastic’s October 14, 2026, walkthrough performs the one-time Universal Profiling storage initialization as superuser. It then configures a Fleet policy with samples_per_second=20 and enrolls the Linux agent. [2] To verify collection, Elastic directs users to Infrastructure > Universal Profiling > Flamegraphs. Users select the traffic window and filter process.executable.name : "java"; agent health alone is insufficient. [2] Elastic reports 30,150 PetClinic requests in four minutes at slightly over half a CPU core. [2] The walkthrough does not report a profiling-overhead measurement. [2]
Continuous profiling
Elastic OpenTelemetry Profiling integration 0.0.1
VerdictPromising
The documentation describes CPU profiling for Elastic teams; technical-preview status warrants a controlled trial before production adoption.
- Best for
- Elastic teams with a Basic subscription, Kibana 9.4.0+, Elastic Agent 9.4.0+ with OpenTelemetry support, and amd64 or arm64 Linux hosts running kernel 5.10+ with eBPF enabled [1]
- Pricing
- Basic subscription required; Elastic’s package reference does not specify package pricing or total ingestion and storage costs [1]
Pros
- Collection without application instrumentation or restarts, according to Elastic [1]
- Explicit sampling-rate configuration in Elastic’s walkthrough [2]
- Java process filtering in Elastic’s flamegraph verification steps [2]
- Documented support for amd64 and arm64 Linux hosts [1]
Cons
- Technical-preview package built on an alpha profiling signal [1][3]
- CPU-only coverage without heap or allocation profiles, according to Elastic’s walkthrough [2]
- GraalVM native-image stacks limited to one native frame in Elastic’s walkthrough [2]
- Separate compatible instrumentation required for trace correlation, according to Elastic [2]
- Required host capabilities and permissions not enumerated in Elastic’s package reference [1]
Why it matters
Elastic’s documented workflow gives teams using its observability stack a way to investigate CPU activity. Sparse CPU samples alone cannot explain why an endpoint waited. [1][2] Grafana Pyroscope’s Java agent supports allocation and lock-event profiling. [5] This documentation-based assessment includes no hands-on measurements of profiling overhead or tests of navigation from a slow span to sampled stacks with version 0.0.1. Elastic’s walkthrough says correlation requires separate compatible instrumentation. Its cited Java example uses Stack 8.13 rather than this preview’s required versions. [1][2]
Attribution
Sources
- 1ElasticOpenTelemetry Profiling Integration for Elastic
- 2Elastic Observability LabsContinuous profiling with OpenTelemetry: CPU flamegraphs
- 3OpenTelemetryOpenTelemetry Profiles
- 4OpenTelemetryOpenTelemetry Profiles Enters Public Alpha
- 5Grafana LabsJava profiling documentation
Read the original source for full details and context.