Questi sono i tre pilastri dell'osservabilità. Rispondono a domande diverse: le metriche ti dicono che qualcosa non va, i log ti dicono cosa è successo, e le trace ti dicono nel flusso distribuito il tempo o l'errore si è manifestato.
Questi sono i tre pilastri dell'osservabilità. Rispondono a domande diverse: le metriche ti dicono che qualcosa non va, i log ti dicono cosa è successo, e le trace ti dicono nel flusso distribuito il tempo o l'errore si è manifestato.
METRICS aggregate numbers over time (counters, gauges, histograms)
→ cheap, low cardinality, great for trends & ALERTING
→ e.g. error rate = 2%, p99 latency = 800ms
LOGS discrete, timestamped events with detail (often structured JSON)
→ rich context for DEBUGGING a specific request
→ e.g. {"level":"error","user":123,"msg":"payment declined"}
TRACES the path of one request across services, with timing per span
→ shows latency BREAKDOWN and where a call fails
→ e.g. checkout 800ms = api 50ms + db 700ms + email 50ms
1. METRIC alerts: "checkout p99 latency jumped to 2s" → you know THERE's a problem
2. TRACE a slow request: 1.8s of 2s is spent in the inventory service
→ you know WHERE it is
3. LOGS of the inventory service at that time: "slow query: missing index"
→ you know WHAT happened
Le metriche ti restringono a un sintomo e a una finestra temporale; le trace lo localizzano a un servizio o a una chiamata; i log forniscono la causa esatta. Andare direttamente ai log senza metriche significa cercare alla cieca.
Le metriche sono aggregate, quindi rimangono economiche anche in scala — ideali per dashboard sempre attivi e alert. I log e le trace sono per evento e costosi, quindi di solito sono campionati e interrogati su richiesta durante l'investigazione.
Usare il pilastro sbagliato fa perdere tempo: non puoi fare alert efficaci su log grezzi (troppo rumorosi, troppo costosi), e non puoi debuggare una specifica richiesta fallita da una metrica aggregata. Sapere che le metriche rilevano, le trace localizzano, e i log spiegano ti dà un percorso veloce e ripetibile da "qualcosa non va" alla causa radice.