Google의 SRE 책에서 나온 네 가지 golden signal은 latency, traffic, errors, saturation입니다. 사용자 대면 시스템에 대해 단 네 가지만 측정할 수 있다면 이것들을 측정하세요 — 함께 보면 대부분의 문제를 잡아냅니다.
네 가지 signal
LATENCY request가 얼마나 걸리는가
→ 성공 vs 실패 latency를 분리 (빠른 500은 "빠른" 것이 아님)
→ 평균이 아니라 percentile(p50/p95/p99)을 추적
TRAFFIC 시스템이 받는 수요의 양
→ requests/초, transactions/초, 동시 세션
ERRORS 실패하는 request의 비율
→ 명시적(HTTP 500)과 암묵적(잘못된 콘텐츠, 너무 느림)
SATURATION 시스템이 얼마나 "꽉 찼는가" — 가장 제약된 리소스
→ CPU, memory, I/O, queue depth; 문제의 선행 지표
왜 이 네 가지가 대부분의 문제를 커버하는가
Latency와 errors는 사용자가 하는 것입니다. Traffic은 을 설명합니다(10배 traffic 급증 중의 latency spike는 평상시의 spike와 다른 의미). Saturation은 입니다 — latency와 errors보다 먼저 오르므로 사용자가 아프기 전에 경고를 줍니다.
