Learn Observability and Analysis / Observability

Technology Guide

Parca

License: Apache-2.0

Parca Logo

Field Guide

Complete Guide

Parca is an open-source continuous profiling system built around an eBPF-based whole-system profiler and a columnar storage engine designed specifically for stack-trace data. It is developed by Polar Signals and released under Apache-2.0.

The Parca Agent runs as a DaemonSet on every node and uses eBPF perf events to sample on-CPU stacks across all processes at ~19 Hz, regardless of language or runtime. Because the sampler lives in the kernel, there is no per-service instrumentation or runtime agent to attach; native code, Go, Rust, C++, and Java (with appropriate unwinding support) all get profiled through the same pipeline. Symbols are resolved out-of-band, either from debug info on the node or from an uploaded symbol store, so stripped production binaries still produce useful flame graphs. Profiles are shipped in the standard pprof format to the Parca server, which stores them in FrostDB, an embedded columnar database also from Polar Signals, tuned for time-series of stacks.

The query UI produces flame graphs, icicle graphs, and diff views across arbitrary label selectors and time ranges, so you can ask “what changed in CPU usage for this deployment between yesterday and today?” In the continuous profiling space Parca competes with Pyroscope (now Grafana Pyroscope), Pixie’s perf profiler, and vendor offerings from Datadog, Elastic, and Google Cloud Profiler. It integrates cleanly with Prometheus service discovery and is the natural fit when the rest of your observability stack is already eBPF- and label-based.

No articles found for Parca yet. Check back soon!