Dessa är de tre pelarna i observerbarhet. De svarar på olika frågor: mätvärden berättar att något är fel, loggar berättar vad som hände, och spår berättar var i ett distribuerat flöde tiden eller felet gick.
Dessa är de tre pelarna i observerbarhet. De svarar på olika frågor: mätvärden berättar att något är fel, loggar berättar vad som hände, och spår berättar var i ett distribuerat flöde tiden eller felet gick.
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
Mätvärden begränsar dig till en symptom och tidsram; spår lokaliserar det till en tjänst eller samtal; loggar ger den exakta orsaken. Att gå direkt till loggar utan mätvärden betyder att söka blindt.
Mätvärden aggregeras, så de förblir billiga även i stor skala — idealt för alltid aktiva instrumentpaneler och varningar. Loggar och spår är per-event och dyra, så de är vanligtvis samplade och efterfrågade på begäran under utredning.
Att använda fel pelare slösar tid: du kan inte varna effektivt på råa loggar (för bullrigt, för dyrt), och du kan inte felsöka en specifik misslyckad begäran från ett aggregerat mätvärde. Att veta att mätvärden detekterar, spår lokaliserar och loggar förklarar ger dig en snabb, upprepbar väg från "något är fel" till rotorsak.