상위: Data Engineering

요약
OpenTelemetry(OTel)는 벤더 중립적 오픈소스 관측성(Observability) 프레임워크이다. 분산 시스템에서 Traces, Metrics, Logs 세 가지 텔레메트리 신호를 수집·처리·내보내기 위한 표준을 제공한다. 관측성 백엔드(Jaeger, Prometheus, Grafana, Datadog 등)와 독립적으로 계측(Instrumentation)을 표준화하는 것이 핵심 목적이다. CNCF graduated 프로젝트.
핵심 개념
- OTel Signals — Traces, Metrics, Logs 세 가지 신호
- OTel Collector — 텔레메트리 데이터 수집·처리·내보내기 파이프라인
- OTel Instrumentation — 자동/수동 계측과 SDK
- OTel Context Propagation — 분산 시스템 간 트레이스 컨텍스트 전파
아키텍처 개요

- OTLP (OpenTelemetry Protocol): SDK와 Collector 간 표준 통신 프로토콜. gRPC 또는 HTTP
- SDK: 애플리케이션에 내장. 텔레메트리 데이터를 생성하고 Collector로 전송
- Collector: 중앙 허브. 여러 소스에서 데이터를 수집하고, 가공한 뒤, 다양한 백엔드로 내보냄
OTel이 아닌 것
OpenTelemetry는 관측성 백엔드가 아니다. 데이터를 저장하거나 시각화하지 않는다. 수집과 전송만 담당하고, 저장·쿼리·알림은 Jaeger, Prometheus, Grafana, Datadog 같은 백엔드의 역할이다.
| 역할 | 도구 |
|---|---|
| 계측 & 수집 | OpenTelemetry |
| Traces 저장/시각화 | Jaeger, Grafana Tempo, Zipkin |
| Metrics 저장/알림 | Prometheus, Grafana Mimir |
| Logs 저장/검색 | Elasticsearch, Grafana Loki |
| 올인원 | Datadog, New Relic, Splunk |
왜 OTel인가?
- 벤더 락인 방지: 계측 코드를 한 번 작성하면 백엔드를 자유롭게 교체할 수 있다
- 표준화: W3C Trace Context, OTLP 등 업계 표준 프로토콜
- 3가지 신호 통합: Traces + Metrics + Logs를 하나의 프레임워크로 상관관계(correlation) 분석
- 광범위한 언어 지원: Java, Python, Go, JavaScript, .NET, Rust 등
- 거대한 생태계: CNCF graduated, 71%의 관측성 사용자가 OTel 활용 (Grafana Labs 설문)
관련 개념
- Monte Carlo: 데이터 관측성 도구 (데이터 품질 모니터링)
- Data Engineering: 데이터 엔지니어링 도메인 MOC