관찰 가능성(Observability)의 새로운 표준
각 APM 벤더마다 고유한 에이전트와 SDK를 사용해야 했고, 한 번 선택하면 변경이 매우 어려웠습니다.
여러 모니터링 도구를 사용할 경우, 각각에 대해 별도의 계측 코드를 작성해야 했습니다.
메트릭, 트레이스, 로그 데이터 형식이 제각각이어서 통합 분석이 어려웠습니다.
마이크로서비스 간 요청 추적이 복잡하고, 벤더 간 호환성이 없었습니다.
상용 APM 솔루션의 라이선스 비용이 높고, 데이터 양에 따라 급격히 증가했습니다.
커스텀 메트릭이나 특수한 요구사항을 구현하기 어려웠습니다.
애플리케이션 모니터링은 주로 로그 파일을 수동으로 분석하는 방식이었습니다.
grep, awk 같은 도구로 문제를 찾아내는 원시적인 방법을 사용했습니다.
AppDynamics, New Relic, Dynatrace 등 전문 APM 벤더들이 등장했습니다.
자동 계측, 실시간 모니터링, 시각화 대시보드를 제공하기 시작했습니다.
Prometheus, Grafana, ELK Stack 등 오픈소스 도구들이 인기를 얻었습니다.
비용 절감과 커스터마이징 가능성으로 많은 기업이 채택했습니다.
분산 추적을 위한 벤더 중립적인 API 표준을 만들기 시작했습니다.
Uber, Yelp 등 대규모 기업들이 참여하여 추진했습니다.
Google이 주도하여 메트릭과 트레이스를 위한 또 다른 표준을 만들었습니다.
OpenTracing과 경쟁하면서 커뮤니티가 분열되는 문제가 발생했습니다.
OpenTracing과 OpenCensus가 통합되어 OpenTelemetry가 탄생했습니다.
CNCF의 두 번째로 큰 프로젝트가 되며, 업계 표준으로 자리잡기 시작했습니다.
OpenTelemetry는 메트릭, 트레이스, 로그를 수집하고 처리하는 단일 표준을 제공합니다.
벤더 중립적이며, 어떤 백엔드와도 호환되는 유연한 아키텍처를 제공합니다.
한 번 계측하면 어떤 백엔드로도 데이터를 보낼 수 있습니다.
메트릭, 트레이스, 로그를 하나의 표준으로 통합했습니다.
코드 변경 없이 자동으로 텔레메트리 데이터를 수집합니다.
CNCF 프로젝트로 활발한 커뮤니티가 지원합니다.