// the find
jaegertracing/jaeger
CNCF Jaeger, a Distributed Tracing Platform
Jaeger is the de-facto standard open-source distributed tracing system, now at v2, built on top of the OpenTelemetry Collector pipeline. It's for platform/infra teams running microservices who need to collect, store, and query traces across services. The v2 rewrite migrates from Jaeger's own agent/collector stack to an OTel Collector-based architecture.
- Storage backend coverage is genuinely broad: Cassandra, Elasticsearch, OpenSearch, Badger, Kafka, ClickHouse, and a gRPC remote storage plugin interface — you're not locked into one vendor.
- The CI setup is thorough: separate e2e workflows per storage backend, unit tests, lint, CodeQL, OpenSSF scorecard, and a Go tip build to catch regressions early. The test coverage infrastructure here is better than most CNCF projects.
- v2 architecture correctly delegates to OTel Collector for ingestion, meaning you get all OTel processors, receivers, and exporters for free rather than maintaining a parallel ecosystem.
- Deprecation policy is explicit and enforced in code — 3-month/2-minor-version grace period with required documentation. This matters a lot for infrastructure components people put in production.
- The v1-to-v2 migration story is rough. CLI flags, config file format, and metric names all changed; the migration docs exist but teams running Jaeger in production with automation built around v1 flags will have non-trivial work ahead.
- All public API packages are marked internal, so there's no stable Go library surface to build tooling against. If you want to write a custom storage plugin you're coupling tightly to internal types that can change without notice.
- The MCP extension (jaegermcp) for AI assistant integration feels premature for a tracing system — it's in the tree but has no clear operational security model documented for exposing trace data to LLM tooling.
- Badger (embedded key-value store) remains a supported backend, but it's single-node by design and its operational characteristics under high cardinality workloads are poorly documented compared to the distributed backends.