"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > OpenTelemetry: 추적, 측정, 로그 및 수하물

OpenTelemetry: 추적, 측정, 로그 및 수하물

2024-11-02에 게시됨
검색:151

OpenTelemetry: Traces, Métricas, Logs e Baggage

분산 아키텍처가 발전하고 마이크로서비스 사용이 증가함에 따라 기존 애플리케이션 모니터링으로는 더 이상 충분하지 않습니다. 측정항목이나 로그만 별도로 캡처하는 도구는 복잡한 시스템의 동작에 대한 완전한 보기를 제공할 수 없습니다. 이러한 맥락에서 OpenTelemetry는 다양한 신호를 수집하고 상호 연관시키는 통합 접근 방식을 제공하는 강력한 솔루션으로 등장합니다. 이러한 신호에는 추적, 지표, 로그, 수하물이 포함되며, 각각은 완전한 관찰 가능성을 향한 여정에서 중요한 역할을 합니다.

1. 추적이란 무엇입니까?

추적은 분산 시스템의 여러 서비스를 통해 요청 경로를 추적하는 데 필수적입니다. 각 요청은 여러 계층과 서비스를 통과할 수 있으며 추적은 이러한 모든 상호 작용을 자세히 기록합니다. 이를 통해 프런트엔드 진입부터 데이터베이스와의 상호작용까지 트랜잭션의 전체 흐름을 볼 수 있어 오류나 속도 저하가 발생하는 위치를 식별하는 데 도움이 됩니다.

공식 OpenTelemetry 문서에 설명된 대로 추적은 요청의 각 개별 단계를 나타내는 범위로 구성됩니다. 그런 다음 이러한 범위는 함께 그룹화되어 거래 흐름에 대한 응집력 있는 보기를 제공하는 추적을 형성합니다.

2. 지표: 시스템 상태 모니터링

측정항목은 OpenTelemetry가 제공하는 또 다른 중요한 신호입니다. 이는 전체 시스템 성능을 모니터링하고 CPU 및 메모리와 같은 리소스 사용량과 서비스 오류율에 대한 통찰력을 제공하는 데 필수적입니다. 추적은 특정 요청의 추적 가능성에 초점을 맞추는 반면, 메트릭은 거시적 보기를 제공하여 애플리케이션의 "상태"를 전체적으로 모니터링할 수 있습니다.

예를 들어 평균 응답 시간, 초당 요청 수 또는 오류율과 같은 지표는 성능 패턴과 추세를 식별하는 데 도움이 될 뿐만 아니라 시스템에 영향을 미칠 수 있는 문제에 대해 경고합니다.

3. 로그: 중요한 이벤트 캡처

로그는 오류, 거래 또는 기타 관련 이벤트와 같은 시스템의 중요한 이벤트를 기록하는 데 사용됩니다. 이는 추적 및 측정항목을 보완하여 특정 시점에 발생한 일에 대한 추가 컨텍스트를 제공합니다.

추적은 요청 경로를 표시하고 지표는 성능에 대한 수치 보기를 제공하는 반면, 로그는 발생한 이벤트에 대한 구체적인 세부 정보를 제공합니다. 예를 들어 추적에서 오류가 감지되면 로그는 오류를 일으킨 오류에 대한 세부 정보를 제공하여 문제를 보다 효율적으로 해결하는 데 도움이 됩니다.

4. 수하물: 공유 컨텍스트

수하물은 종종 과소평가되는 신호이지만 분산된 요청을 추적하는 데 중요한 역할을 합니다. 이를 통해 요청의 서비스 간에 상황별 정보가 전파될 수 있으며 이는 마이크로서비스 시스템에서 매우 유용합니다. 수하물을 사용하면 시스템의 여러 부분 간에 속성과 데이터를 공유하여 요청 컨텍스트가 처음부터 끝까지 유지되도록 할 수 있습니다.

예를 들어, 요청이 시스템의 여러 부분에 있는 여러 서비스를 통과한다고 가정해 보세요. 수하물은 거래 ID 또는 사용자 데이터와 같은 속성이 관련된 모든 서비스 간에 전달되도록 보장하여 로그, 지표 및 추적의 상관 관계를 촉진합니다.

이러한 신호 결합의 중요성

추적, 지표, 로그, 수하물 등 각 신호는 특정 기능을 가지고 있지만 OpenTelemetry의 진정한 힘은 이러한 신호의 조합에서 드러납니다. 함께 사용하면 시스템의 모든 측면에 대한 상세하고 응집력 있는 보기를 제공합니다. 예를 들어:

  • 추적은 요청의 전체 흐름을 보여줄 수 있습니다.
  • 지표를 보면 특정 서비스에 대한 평균 응답 시간이 증가했음을 나타낼 수 있습니다.
  • 로그는 발생한 오류에 대한 세부정보를 제공할 수 있습니다.
  • 수하물은 요청의 각 단계에서 중요한 정보를 사용할 수 있도록 보장합니다.

이러한 신호 조합을 통해 훨씬 더 풍부하고 자세한 관찰이 가능해 팀에서 문제가 있는 위치와 문제를 효율적으로 해결하는 방법을 빠르게 식별할 수 있습니다.

결론

분산 아키텍처와 마이크로서비스가 지배적인 세상에서 애플리케이션 동작을 모니터링하고 이해하려면 단순한 측정항목이나 격리된 로그 이상의 것이 필요합니다. 내장된 추적, 지표, 로그 및 수하물 신호를 갖춘 OpenTelemetry는 DevOps 팀과 개발자가 애플리케이션의 최적 성능을 유지하는 데 필요한 가시성을 제공합니다.

이러한 모든 신호를 아직 조합하여 사용하지 않는 경우 시스템 모니터링을 최적화할 기회를 놓칠 수 있습니다. 분산 애플리케이션의 가시성을 어떻게 처리해 왔습니까? 이미 OpenTelemetry를 사용하고 계시나요? 복잡한 시스템의 관찰 가능성과 성능에 대한 더 많은 통찰력을 얻으려면 댓글로 경험을 공유하고 LinkedIn에서 저를 팔로우하세요.

릴리스 선언문 이 기사는 https://dev.to/dellamas/opentelemetry-traces-metricas-logs-e-baggage-4foo?1에서 복제됩니다.1 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3