이들은 observability의 세 기둥입니다. 서로 다른 질문에 답합니다: metrics는 무언가 잘못되었다는 사실을, logs는 무엇이 일어났는지를, traces는 분산 흐름에서 시간이나 오류가 어디로 갔는지를 알려줍니다.
세 기둥
text
METRICS 시간에 따른 집계 숫자 (counter, gauge, histogram)
→ 저렴, 낮은 cardinality, 추세 & ALERTING에 적합
→ 예: error rate = 2%, p99 latency = 800ms
LOGS 상세 정보를 담은 개별 timestamped 이벤트 (보통 구조화된 JSON)
→ 특정 request를 DEBUGGING하기 위한 풍부한 맥락
→ 예: {"level":"error","user":123,"msg":"payment declined"}
TRACES 여러 service를 가로지르는 한 request의 경로, span별 타이밍 포함
→ latency 분해와 어디서 호출이 실패하는지를 보여줌
→ 예: checkout 800ms = api 50ms + db 700ms + email 50ms
