To so tri stebri opazljivosti. Odgovarjajo na različna vprašanja: metrike vam povedo da je nekaj narobe, dnevniki vam povedo kaj se je zgodilo, in sledi vam povedo kje v porazdeljenom toku je šel čas ali napaka.
To so tri stebri opazljivosti. Odgovarjajo na različna vprašanja: metrike vam povedo da je nekaj narobe, dnevniki vam povedo kaj se je zgodilo, in sledi vam povedo kje v porazdeljenom toku je šel čas ali napaka.
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
Metrike vas zožijo na simptom in časovno okno; sledi ga lokalizirajo na storitev ali klic; dnevniki dajo natančno vzrok. Direktno jemanje dnevnikov brez metrik pomeni slepega iskanja.
Metrike so agregirane, zato ostanejo poceni tudi pri obsegu — idealne za vedno aktivne nadzorne plošče in opozorila. Dnevniki in sledi so na dogodek in dragi, zato so običajno vzorčeni in poizvedovani na zahtevo med preiskavo.
Uporaba napačnega stebra zapravi čas: ne morete učinkovito opozarjati na surove dnevnike (prepočasni, predrag), in ne morete razhroščiti določenega neuspešnega zahtevka z agregirano metriko. Vedenje, da metrike detektirajo, sledi locirajo in dnevniki pojasnjujejo, vam da hiter, ponovljiv pot od "nekaj je narobe" do osnovnega vzroka.