Esta página se muestra en inglés. Una traducción al español está en curso.
ConfigsApr 11, 2026·3 min de lectura

Jaeger — CNCF Distributed Tracing Platform

Jaeger is a CNCF-graduated distributed tracing system for monitoring microservice-based architectures. Track requests across services, identify latency hotspots, and understand root causes of failures in complex distributed systems.

Introducción

Jaeger is a CNCF-graduated distributed tracing platform originally developed at Uber. Jaeger captures, stores, and visualizes traces — sequences of spans showing how a request flows through multiple microservices. Essential for debugging latency and failures in distributed systems.

What Jaeger Does

  • Trace collection — receive spans via OTLP, Jaeger protocol, Zipkin
  • Storage backends — Elasticsearch, Cassandra, Kafka, Badger, memory
  • Query API — search traces by service, operation, tags, duration
  • UI — waterfall view of spans, service dependencies graph
  • Sampling — adaptive, probabilistic, rate-limited
  • Service Performance Monitoring (SPM) — RED metrics from traces
  • Critical Path — highlight bottleneck spans

Architecture

Jaeger components:

  • Agent (deprecated, use OTLP) — local daemon
  • Collector — receives spans, writes to storage
  • Query — serves UI and API, reads from storage
  • Ingester — for Kafka async pipeline
  • All-in-one — dev container bundling everything
  • OpenTelemetry Collector — modern ingestion preferred

Self-Hosting

# Production deployment
components:
  - Collector (multi-replica, behind LB)
  - Elasticsearch cluster (storage)
  - Query service (multi-replica)
  - OTel Collector (ingestion)

Kubernetes: use the official Jaeger Operator or Helm charts.

Key Features

  • OpenTelemetry native ingestion
  • Multiple storage backends
  • Service dependency graph
  • Adaptive sampling
  • Trace search and filtering
  • RED metrics (SPM)
  • Zipkin compatibility
  • gRPC and HTTP APIs
  • Kubernetes operator

Comparison

Tracing Storage OTel Metrics
Jaeger ES, Cassandra, Kafka Yes SPM
Tempo Object storage Yes Via Grafana
Zipkin ES, MySQL, Cassandra Yes Partial
Honeycomb Managed Yes Yes
Lightstep Managed Yes Yes
OpenTelemetry Collector Any backend Native Yes

FAQ

Q: Jaeger vs Tempo? A: Jaeger has its own UI and a mature ecosystem; Tempo stores traces on object storage (cheap), uses Grafana for viewing, and integrates better with Loki/Prometheus.

Q: Sampling strategy? A: Do not sample 100% in production (wastes storage). Use probabilistic 1% + tag-based force-keep (always keep errors and slow requests).

Q: Relationship with OpenTelemetry? A: OTel is the standard (API + SDK + Collector); Jaeger is the backend. New projects should use OTel for instrumentation + Jaeger for storage and query.

Sources

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados