핵심 인사이트 (3줄 요약)
- 분산 시스템 내부의 복잡한 상태를 외부에서 관찰하고 추론하기 위한 메트릭(Metrics), 로그(Logs), 트레이스(Traces) 세 가지 핵심 데이터를 말한다.
- 각각 수치(What happened?), 텍스트(Why?), 흐름(Where?) 정보를 제공하며, 이를 상호 연계(Correlation)하여 문제의 근본 원인을 파악한다.
- 클라우드 네이티브 환경에서 단순 모니터링을 넘어 **알려지지 않은 문제(Unknown-Unknowns)**를 탐색하고 해결하는 옵저버빌리티의 근간이다.
Ⅰ. 개요 (Context & Background)
모니터링이 '서비스가 가용한가?'라는 질문에 답한다면, 옵저버빌리티(Observability)는 '왜 서비스가 느린가?'라는 질문에 답한다. 마이크로서비스 아키텍처(MSA)에서는 수많은 서비스가 얽혀 있어 전통적인 대시보드만으로는 장애를 추적하기 어렵다. 따라서 메트릭, 로그, 트레이스라는 세 가지 상호보완적 데이터 소스가 필수적이다.
Ⅱ. 아키텍처 및 핵심 원리 (Deep Dive)
각 기둥은 데이터의 특성과 처리 방식이 다르며, 통합 플랫폼(OpenTelemetry 등)을 통해 시너지를 낸다.
[ Three Pillars of Observability / 옵저버빌리티 3대 기둥 ]
1. Metrics (What) 2. Logs (Why) 3. Traces (Where)
+-----------------------+ +-----------------------+ +-----------------------+
| [Stateless Counters] | | [Structured Text] | | [Span & Trace ID] |
| CPU: 85% | | "User 123 login fail" | | Service A -> B -> C |
| Memory: 4GB | | "DB Timeout @ 12ms" | | [Trace Tree Map] |
+-----------+-----------+ +-----------+-----------+ +-----------+-----------+
| | |
+-------------+-------------+-------------+-------------+
| (Correlation / 상호 연계)
v
+---------------------------------------+
| Root Cause Analysis (RCA) |
+---------------------------------------+
- 메트릭 (Metrics): 특정 시간 간격으로 수집된 측정값 (CPU, 응답속도). 저장 효율이 좋고 경보(Alerting) 설정에 최적이다.
- 로그 (Logs): 특정 시점에 발생한 이벤트의 상세 기록. '무슨 일이 왜 일어났는지' 가장 구체적으로 말해주지만 데이터량이 방대하다.
- 트레이스 (Traces): 하나의 요청이 시스템을 관통하는 경로. 서비스 간의 병목 구간과 지연을 시각적으로 파악하게 해준다.
Ⅲ. 융합 비교 및 다각도 분석 (Comparison & Synergy)
| 비교 항목 | 메트릭 (Metrics) | 로그 (Logs) | 트레이스 (Traces) |
|---|---|---|---|
| 데이터 형태 | 수치 (Aggregate) | 텍스트 (Events) | 스팬 구조 (Spans) |
| 저장 효율 | 매우 높음 | 낮음 (대량 발생) | 중간 (샘플링 필수) |
| 주 사용처 | 추세 분석, 경보 | 상세 디버깅 | 분산 서비스 흐름 분석 |
| 대표 도구 | Prometheus, Datadog | ELK Stack, Splunk | Jaeger, Zipkin |
Ⅳ. 실무 적용 및 기술사적 판단 (Strategy & Decision)
- 상호 연계 (Correlation): 개별 데이터는 고립되어 있으면 가치가 적다. Trace ID를 로그에 심고, 메트릭 대시보드에서 관련 로그로 바로 이동할 수 있는 연계가 핵심이다.
- 샘플링 전략 (Sampling Strategy): 트레이스는 모든 요청을 다 저장하면 비용이 막대하므로, 오류가 발생했거나 지연이 긴 요청 위주로 선별 저장하는 전략이 필요하다.
- PE 관점의 판단: 옵저버빌리티는 도구 도입보다 '데이터 계측(Instrumentation)'의 표준화가 중요하다. 벤더 록인을 방지하기 위해 오픈텔레메트리(OpenTelemetry) 표준을 따르는 설계를 강력히 권고한다.
Ⅴ. 기대효과 및 결론 (Future & Standard)
3대 기둥은 디지털 전환 시대의 '항공기 블랙박스'와 같다. 향후 인공지능이 이 데이터들을 스스로 분석하여 장애를 미리 예측하고 자동 치유(Self-healing)하는 AIOps로 발전할 것이며, 이는 시스템의 신뢰성(Reliability)을 보장하는 최후의 보루가 될 것이다.
📌 관련 개념 맵 (Knowledge Graph)
- 상위 개념: Observability, SRE
- 하위 개념: Prometheus (Metrics), ELK Stack (Logs), Jaeger (Traces)
- 연관 개념: OpenTelemetry (OTel), Root Cause Analysis, MELT
👶 어린이를 위한 3줄 비유 설명
- 메트릭: 학교 급식실에 학생이 몇 명인지 매 분마다 숫자를 적는 거예요. (전체 숫자)
- 로그: 누가 급식을 남겼는지, 누가 반찬 투정을 했는지 일기장에 자세히 적는 거예요. (상세 내용)
- 트레이스: 급식을 먹기 위해 줄을 서서 밥, 국, 반찬을 받는 순서를 따라가는 지도예요. (이동 순서)