Observability(관측성)
시스템 내부 코드를 직접 들여다보지 않고도, 외부에서 관찰되는 지표(Metric)·로그(Log)·트레이스(Trace) 세 가지 데이터만으로 내부에서 무슨 일이 일어나고 있는지 파악할 수 있는 정도를 뜻합니다.
한눈에 보는 정의
Observability(관측성)는 시스템 외부에서 관찰되는 지표, 로그, 트레이스만으로도 내부에서 무슨 일이 일어나고 있는지 파악할 수 있는 정도를 뜻합니다.
자세히 알아보기
- 예문: "미리 정해둔 지표만 보던 방식에서 벗어나, Observability를 강화해 예상치 못한 문제의 원인까지 추적할 수 있게 됐다."
- Monitoring(모니터링) (모니터링)이 미리 정해둔 지표를 지켜보며 '문제가 생겼는지'를 감시하는 데 가깝다면, Observability는 애초에 예상하지 못했던 문제가 터졌을 때 '왜 그런 문제가 생겼는지'까지 답할 수 있는 능력에 더 가깝습니다.
- 숫자로 된 지표(Metric), 시스템이 남긴 기록인 로그, 하나의 요청이 여러 서비스를 거치는 과정을 추적하는 트레이스, 이 세 가지 데이터를 종합해 시스템 내부 상태를 유추합니다.
- 여러 개의 작은 서비스로 시스템이 잘게 나뉠수록 문제의 원인을 한눈에 파악하기 어려워지기 때문에, 복잡한 분산 시스템일수록 Observability를 갖추는 것이 중요해집니다.