• /
  • EnglishEspañol日本語한국어Português
  • 로그인지금 시작하기

APM: OpenTelemetry를 통한 앱 및 서비스 모니터링

OpenTelemetry는 옵저버빌리티 데이터를 수집, 처리 및 내보내기 위한 범용 API와 SDK를 제공합니다. 이러한 API와 SDK가 가장 널리 사용되는 경우는 APM 모니터링으로, 이 경우 앱 또는 서비스를 모니터링을 위한 계측 기능이 설치됩니다.

이 페이지에서는 뉴렐릭으로 OpenTelemetry 기반 APM 모니터링을 하기 위한 일반적인 설정 단계를 설명합니다.

OpenTelemetry로 앱 또는 서비스 계측

OpenTelemetry는 계측 애플리케이션을 위해 언어별 API와 SDK를 제공합니다. 대부분의 언어는 보편적으로 사용되는 라이브러리와 프레임워크를 위해 풍부한 계측 세트를 제공합니다.

시작하는 데 도움이 되도록 다양한 언어로 간단한 예제 애플리케이션을 제공합니다. 애플리케이션은 각 언어별로 널리 사용되는 웹 프레임워크를 사용해 구축되었습니다. 아래 예에서는 다음을 구성하는 방법을 시연합니다.

  • 뉴렐릭에 표시될 서비스 이름

  • 뉴웰릭 OTLP 엔드포인트로 데이터를 전송하는 OpenTelemetry Protocol(OTLP) 내보내기 도구

  • 최고의 뉴렐릭 경험을 위해 OpenTelemetry를 최적화하기 위한 추가 권장 설정

    Go agent
    Java
    .NET
    Node.js
    Python
    Ruby

    사용 가능한 계측 및 고급 시나리오에 대한 자세한 내용은 관련 OpenTelemetry 언어 문서를 참조하십시오.

    중요

    OpenTelemetry가 지원하는 모든 언어를 사용해 뉴렐릭으로 데이터를 전송할 수 있습니다. 위의 예는 지원되는 언어 중 일부에 불과합니다.

    귀하의 언어가 없습니까? GitHub에서 예시를 요청하십시오!

뉴렐릭 UI에서 데이터 보기

앱이 계측되고 데이터를 뉴렐릭으로 내보내도록 설정되면 뉴렐릭 UI 에서 데이터를 찾을 수 있습니다.

  • All entities > Services - OpenTelemetry에서 엔터티를 찾을 수 있습니다. 엔터티 이름은 앱의 service.name 리소스 속성 값으로 설정됩니다. 뉴렐릭 서비스 엔터티가 OpenTelemetry 리소스 속성에서 어떻게 파생되는지에 대한 자세한 내용은 서비스를 참조하십시오.

  • NRQL을 사용하여 트레이스, 메트릭로그인에 대해 직접 쿼리합니다.

  • 자세한 내용은 OpenTelemetry APM UI를 참조하십시오.

    엔터티를 찾을 수 없고 NRQL로 데이터를 볼 수 없는 경우 OTLP 문제 해결을 참조하십시오.

동일한 프로세스에서 뉴렐릭 에이전트와 OpenTelemetry 도구를 실행하는 방법

뉴렐릭 에이전트와 OpenTelemetry 도구(SDK, 에이전트 등)는 시중에 나와 있는 많은 APM 제품 중 하나입니다.

모든 언어에서, 거의 모든 APM 제품은 간단한 수준의 언어와 사용 가능한 런타임 후크를 사용하여 작동하며, 대부분은 런타임 시 코드 동작을 변경합니다. 언어 아키텍처에 따라 이는 바이트 코드 조작이나 몽키 패치 같은 기술을 통해 달성되는 경우가 많습니다.

APM 제품이 실행 코드를 변경하는 방식은 복잡하기 때문에, 한 제품이 동일한 프로세스에서 실행되는 다른 제품과 호환된다는 보장은 없습니다. 최선의 경우, 서로 별도로 상주하며 애플리케이션에서 독립적으로 텔레메트리를 생성합니다. 최악의 경우, 서로를 충돌해 예측할 수 없는 행동이 야기될 수 있습니다.

뉴렐릭의 APM 에이전트가 동일한 프로세스에서 실행되는 다른 APM 제품과 호환된다고 보장할 수 없으므로, 귀사의 요구 사항에 가장 적합한 하나만 선택해 사용할 것을 권합니다.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.