개요
관측성(Observability)은 시스템의 내부 상태를 외부 출력(로그, 메트릭, 트레이스)으로 파악하는 능력입니다. 모니터링(Monitoring)이 “무엇이 고장났는가”를 알려주는 반면, 관측성은 **“왜 고장났는가”**를 분석할 수 있게 합니다.
세 가지 기둥 (Three Pillars)
| 기둥 | 설명 | 도구 |
|---|
| 로그 (Logs) | 이벤트 기록 (텍스트/구조화) | ELK, Loki, CloudWatch Logs |
| 메트릭 (Metrics) | 수치 측정값 (CPU, 응답시간, 에러율) | Prometheus, Datadog, CloudWatch |
| 트레이스 (Traces) | 요청의 서비스 간 흐름 추적 | Jaeger, Tempo, X-Ray |
[사용자 요청] → [API Gateway] → [Service A] → [Service B] → [DB]
↓ ↓ ↓ ↓
로그 메트릭 트레이스 로그
↓
[대시보드/알람]
오픈소스 도구
메트릭
Prometheus
| 항목 | 내용 |
|---|
| 유형 | 시계열 메트릭 DB + 수집기 |
| 핵심 | Pull 기반 수집, PromQL 쿼리, K8s 표준 |
| 저장 | 로컬 TSDB |
- CNCF Graduated 프로젝트
- K8s 모니터링 사실상 표준
- AlertManager로 알림 (Slack, PagerDuty 등)
- 단점: 장기 저장 불편 → Thanos, Cortex, Mimir로 해결
Grafana
| 항목 | 내용 |
|---|
| 유형 | 시각화 대시보드 (데이터 소스 연결) |
| 핵심 | Prometheus, Loki, Tempo 등 다양한 소스 시각화 |
- 가장 널리 사용되는 모니터링 대시보드
- Grafana Cloud: 매니지드 서비스
- Grafana LGTM Stack: Loki(로그) + Grafana(시각화) + Tempo(트레이스) + Mimir(메트릭)
로그
Loki (Grafana)
| 항목 | 내용 |
|---|
| 핵심 | ”Prometheus for logs”, 라벨 기반 인덱싱 |
| 장점 | 저비용 (전체 텍스트 인덱싱 안 함), Grafana 통합 |
ELK Stack (Elastic)
| 구성 | 역할 |
|---|
| Elasticsearch | 로그 저장/검색 (전문 검색) |
| Logstash | 로그 수집/변환 파이프라인 |
| Kibana | 시각화 대시보드 |
- 가장 오래된 로그 스택, 강력한 검색
- 리소스 사용량 높음 → 대안: Loki, ClickHouse
트레이스
| 도구 | 특징 |
|---|
| Jaeger | CNCF, 분산 트레이싱, Uber 개발 |
| Tempo (Grafana) | 트레이스 저장소, Grafana 통합, 인덱스 불필요 |
| Zipkin | Twitter 개발, 경량 |
통합 표준: OpenTelemetry (OTel)
| 항목 | 내용 |
|---|
| 핵심 | 로그 + 메트릭 + 트레이스 수집 표준 (CNCF) |
| 구성 | SDK (계측) + Collector (수집/라우팅) |
| 언어 | Go, Java, Python, JS, .NET, Rust 등 |
[앱 + OTel SDK] → [OTel Collector] → [Prometheus (메트릭)]
→ [Loki (로그)]
→ [Jaeger/Tempo (트레이스)]
- 벤더 중립: 수집 후 원하는 백엔드로 전송
- 2026년 기준 사실상 표준으로 자리잡음
- 이전: OpenTracing + OpenCensus → 통합 = OpenTelemetry
상용 도구 (SaaS)
| 도구 | 강점 | 가격 |
|---|
| Datadog | 올인원 (메트릭+로그+트레이스+APM+보안), UI 최고 | 비쌈 |
| New Relic | APM 원조, 전체 스택 관측성 | 무료 100GB/월 |
| Grafana Cloud | 오픈소스 스택 매니지드 (LGTM) | 무료 티어 넉넉 |
| Splunk | 로그 분석 최강, 엔터프라이즈 | 매우 비쌈 |
| Sentry | 에러 추적 특화 (스택트레이스, 세션 리플레이) | 무료 티어 |
| PagerDuty | 온콜/인시던트 관리 특화 | 중간 |
| AWS CloudWatch | AWS 네이티브 | AWS 사용량 비례 |
| GCP Cloud Monitoring | GCP 네이티브 | GCP 사용량 비례 |
비교
| 스택 | 구성 | 비용 | 난이도 | 최적 |
|---|
| Grafana LGTM | Mimir+Loki+Tempo+Grafana | 낮음 | 중간 | 오픈소스, K8s |
| Prometheus + Grafana | Prometheus+Grafana | 낮음 | 낮음 | 메트릭 위주 |
| ELK | Elasticsearch+Logstash+Kibana | 중간 | 중간 | 로그 검색 위주 |
| Datadog | 올인원 SaaS | 높음 | 낮음 | 빠른 시작, 엔터프라이즈 |
| New Relic | 올인원 SaaS | 중간 | 낮음 | 무료 시작 |
| Grafana Cloud | 매니지드 LGTM | 중간 | 낮음 | 오픈소스 + 관리 편의 |
선택 가이드
| 상황 | 추천 |
|---|
| K8s + 오픈소스 | Prometheus + Grafana + Loki |
| 올인원 + 예산 있음 | Datadog |
| 올인원 + 무료 시작 | New Relic or Grafana Cloud |
| 로그 검색 중심 | ELK or Loki |
| 에러 추적 | Sentry |
| 계측 표준화 | OpenTelemetry (어떤 백엔드든) |
관련 항목