Backend per trace OpenTelemetry/Jaeger/Zipkin. 100% sampling, TraceQL, correlazione automatica con log e metriche.
TEMPO · open source
Tempo è il backend distributed tracing di Grafana Labs. Object storage based, niente database costoso da gestire, supporto nativo a OTLP, Jaeger, Zipkin. Il trick: index minimo (trace ID e poco altro), tutto il resto compresso su S3.
Risultato: puoi salvare il 100% dei trace senza dover sampling aggressivo. Costo storage paragonabile a quello dei log. Per scenari ad alto volume si abbinano tail-sampling intelligenti.
TraceQL è il linguaggio di query: cerca per attributi span, durata, status, relazioni parent/child. Exemplar linking: clicchi su un punto di un grafico Mimir, ti porta al trace; clicchi su un log Loki, ti porta al trace; clicchi su un trace, vedi i log di quella richiesta.
Sampling più alto, costi più bassi, query più ricche.
Riceve da OTel Collector senza traduzione. Supporta anche Jaeger e Zipkin per legacy.
Filtra per attributi, durata, status, parent/child. Sostituisce 100 dashboard custom.
Costo storage S3 + index minimo. Niente decisioni di sampling in produzione.
Trace ↔ Mimir ↔ Loki. Un click ti porta dal grafico al log del singolo span.
Grafo dei servizi automatico dai trace. Vedi dipendenze e bottleneck istantaneamente.
Tieni i trace con errore o lenti, scarta il resto. Configurabile per servizio.
› Tutti i trace della rotta /checkout > 1s { resource.service.name = "checkout-api" && span.http.route = "/v1/cart" && duration > 1s } › Tutti i trace con errore DB nell'ultima ora { span.db.system = "postgresql" && status = error } › Service graph derivato (Grafana) checkout-api ──► payment-api (p99: 320ms) ──► cart-svc (p99: 45ms) payment-api ──► stripe (p99: 180ms)
Tempo managed su Clodino Cloud, instrumentation OpenTelemetry, exemplar linking pronto.