• 로그인지금 시작하세요

사용자의 편의를 위해 제공되는 기계 번역입니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

New Relic을 사용한 OpenTelemetry 소개

OpenTelemetry는 애플리케이션과 호스트에서 원격 측정 데이터를 수집한 다음 해당 데이터를 New Relic으로 내보내는 데 사용할 수 있는 툴킷입니다. 데이터가 New Relic에 있으면 New Relic 플랫폼을 사용하여 데이터를 분석하고 애플리케이션 문제를 해결할 수 있습니다.

OpenTelemetry에는 New Relic 에이전트와 겹치는 기능이 있으므로 아래 정보를 검토하여 원격 측정 목표를 달성하는 데 도움이 되는지 확인하십시오. OpenTelemetry에 이미 익숙하고 시작하려면 설정 지침을 참조하세요.

다음은 OpenTelemetry에 익숙해지는 데 도움이 되는 몇 가지 주제입니다.

오픈텔레메트리의 이점

OpenTelemetry는 서비스 및 호스트 계측을 위한 안전한 공급업체 중립적 사양 을 제공하므로 New Relic과 같이 선택한 고유한 백엔드로 데이터를 내보낼 수 있습니다. OpenTelemetry는 서비스 및 호스트에 대한 원격 분석 데이터를 수집하고 전송하는 방법을 표준화하는 단일 API 및 라이브러리 세트를 제공합니다.

다음 구성 요소는 OpenTelemetry 프로젝트를 구성합니다.

  • 모든 프로젝트에서 일관성을 유지하기 위한 관찰 기능의 핵심 축에 대한 스펙입니다. 새 릴릭은 이러한 모든 신호: 추적, 메트릭 및 로그를 지원합니다 (세부사항 아래참조).
  • Java, Python, Go, Erlang등의 언어를 위해 특별히 작성된 스펙 SDKs (API의 참조 구현) 를 기반으로 하는 인터페이스 및 구현을 포함하는 API
  • 처리 및 내보내기를 위한 벤더-불문 (agnostic) 구현을 제공하는 콜렉터
  • 선택한 백엔드로 데이터를 보낼 수 있는 내보내기

Open텔레메트리의 구성요소는 텔레메트리 데이터를 캡처하기 위한 몇 가지 별개의 장점을 제공하기 위해 함께 작동합니다.

기능

설명

유비쿼터스 (Ubiquitous) 기기

단일 개방형 계측 표준은 전 세계의 엔지니어가 계측에 기여함에 따라 더 나은 범위와 유연성을 제공합니다.

미래 증거

계측이 라이브러리 및 프레임워크에 구축되고 더 많은 공급업체가 이 개방형 표준을 지원하기 위해 이동함에 따라 계측을 변경할 필요가 없다는 확신을 가질 수 있습니다.

최신 기술 지원

새로운 기술이 등장하면 컨트리뷰터는 Open텔레메트리에 통합을 빌드하거나 소스 코드에 직접 인스트루먼테이션을 추가하여 일반 사용자가 이러한 새로운 기술을 쉽게 모니터링할 수 있도록 합니다.

단순화된 선택

사용할 인스트루먼테이션 옵션 (독점 옵션 또는 기타 개방형 표준 중 하나) 을 결정할 필요가 없습니다.

플랫폼 간 호환성

오픈텔레메트리는 다양한 언어와 백엔드를 지원한다. 이는 기존 인스트루먼테이션을 변경하지 않고 원격 측정을 캡처 및 전송하기 위한 공급업체 중립 경로를 나타냅니다.

간소화된 관찰 가능성

공급업체가 자체 에이전트 또는 콜렉터를 개발할 필요가 없으므로 단일 표준에 대해 지원하고 테스트하는 것이 더 쉽습니다.

고차원

OpenTelemetry는 차원 지표를 사용하므로 AWS 리전, Kubernetes 클러스터 또는 서비스 버전과 같은 데이터의 더 많은 측면을 필터링하고 패싯할 수 있습니다. 차원 측정항목을 사용하면 발생과 보고 사이의 시간도 단축됩니다.

OpenTelemetry 계측 또는 New Relic 에이전트를 사용해야 합니까?

Open텔레메트리를 고려할 때 텔레메트리 데이터도 캡처하는 새 Relic APM 에이전트를 확인할 수 있다.

예상대로 OpenTelemetry 에이전트 및 SDK에서 사용할 수 있는 기능과 New Relic 에이전트에서 사용할 수 있는 기능 간에는 겹치는 부분이 많습니다. 분산 추적 원격 분석 데이터에 관심이 있는 경우 특히 그렇습니다. 당신이 내리는 선택은 당신이 필요로 하는 것에 달려 있습니다.

New Relic 및 OpenTelemetry 계측을 모두 탐색하는 것이 좋습니다. CNCF Slack 채널인 #otel-newrelic 에서 이에 대해 논의하여 가장 적합한 것을 결정하는 것을 환영합니다. 여기에서 CNCF의 Slack 계정에 먼저 가입해야 할 수도 있습니다.

오픈텔레메트리: 진행 중인 작업

Open텔레메트리는 여전히 새로운 표준이므로 사용 가능한 항목의 영향을 받을 수 있습니다. Open텔레메트리 사이트에서 사양의 현재 상태를 확인할 수 있습니다.

언어 특정 Open텔레메트리 API와 SDKs의 현재 상태는 다양하다: 일부 언어는 여전히 사전 알파로 되어 있으며 서비스를 인스트루먼트하는 방법에 대한 지시사항이 누락되었을 수 있다. 대부분의 언어에는 데이터 내보내기를 시작하기에 충분한 추적의 일부 구현이 있습니다. 각 언어에 대한 Open텔레메트리 스펙 준수 상태의 개요를 제공하는 GitHub의 테이블 을 확인하십시오.

New Relic이 현재 에이전트 또는 SDK를 제공하지 않는 언어의 경우 OpenTelemetry가 좋은 대안을 제공할 수 있습니다. 또한 원격 분석 데이터 샘플링을 명시적으로 제어하려는 경우 OpenTelemetry는 많은 유연성을 제공합니다.

OpenTelemetry가 성숙해짐에 따라 새로운 OpenTelemetry 데이터 모델을 계속 지원하고 플랫폼에서 선별된 UI 경험을 제공할 것입니다.

New Relic 에이전트

일반적으로 New Relic의 APM 및 인프라 에이전트는 서비스 및 호스트에 대해 더 많은 원격 측정 데이터를 수집합니다. 또한 광범위한 구성 옵션과 광범위한 자동 계측 기능 세트를 제공합니다.

New Relic의 APM 에이전트는 개별 서비스에 대한 자세한 트랜잭션 추적 가시성을 제공합니다. 또한 유용한 통찰력을 얻기 위해 충분한 데이터를 캡처해야 하는 필요성과 계측의 성능 영향 사이의 균형을 맞추기 위해 사전 정의된 샘플링을 제공합니다.

중요

동일한 프로세스에서 New Relic 에이전트 및 OpenTelemetry 도구 실행

새로운 증식제 및 오픈텔레메트리 툴링 (SDKs, 에이전트 등) 은 시중에 판매되고 있는 많은 APM 제품들 중 하나이다.

주어진 언어에 대해 거의 모든 APM 제품은 동일한 저수준 언어와 사용 가능한 런타임 후크를 사용하여 작동하며, 대부분이 런타임에 코드의 동작을 변경합니다. 언어 아키텍처에 따라 이는 종종 바이트 코드 조작 또는 원숭이 패치와 같은 기술을 통해 달성됩니다.

APM 제품이 실행 중인 코드를 변경하는 복잡한 방식으로 인해 한 제품이 동일한 프로세스에서 실행 중인 다른 제품과 호환된다는 보장은 없습니다. 기껏해야 서로 모르는 사이에 나란히 존재하며 애플리케이션에서 원격 분석을 독립적으로 생성합니다. 최악의 경우 서로를 짓밟아 예측할 수 없는 행동을 하게 됩니다.

New Relic는 우리의 APM 에이전트가 동일한 프로세스에서 실행되는 다른 APM 제품과 호환 가능하다는 보장을 할 수 없다. 우리는 당신이 원하는 것에 가장 적합한 것을 하나만 선택하는 것이 좋습니다.

오픈텔레메트리가 새 릴릭과 함께 작동하는 방법

새 릴릭은 텔레메트리 데이터를 내보내기 위한 고유 Open텔레메트리 프로토콜 (OTLP) 을 지원합니다. 이를 통해 사용자는 Open텔레메트리 커뮤니티에서 개발한 벤더 중립 컴포넌트를 사용하여 데이터를 New Relic로 내보낼 수 있다.

아래 섹션의 표는 각 원격 측정 신호에 대해 지원되는 기능을 보여줍니다. 아래 섹션의 세부 정보나 지원되지 않는 사용 사례에 대해 질문이 있는 경우 CNCF Slack 채널 에서 문의하고 이 페이지에서 향후 업데이트를 확인하세요. New Relic으로 구현에 대한 큰 그림을 보고 싶다면 참조 아키텍처 를 참조하십시오.

중요

New Relic's 수출기업 for Open텔레메트리는 이제 OTLP를 사용하여 데이터를 새로운 Relic (Relic to New Relic) 로 내보내는 데 더 이상 사용되지 않습니다.

트레이스

새로운 Relic는 추적 신호의 OTLP에 대한 지원을 제공한다. 업스트림 스펙의 만기는 안정입니다.

OpenTelemetry 추적 및 범위는 New Relic 추적 및 범위와 호환됩니다. OpenTelemetry 범위에는 쿼리 시 범위 데이터를 패싯 또는 필터링하는 데 사용할 수 있는 차원에 직접 매핑되는 속성(이름-값 쌍) 및 리소스 속성이 선택적으로 포함됩니다. OpenTelemetry 범위 메타데이터(예: name , kindtrace_id )도 New Relic 범위의 차원에 직접 매핑됩니다. 현재 New Relic은 스팬 링크를 지원하지 않습니다.

자세한 내용은 우수 사례 안내서의 추적 절을 참조하십시오.

기능

지원

스팬 이벤트

스팬 연결

프리미티브 배열(동종)

✅ (중첩되지 않고 64개 이하의 요소여야 함)

메트릭

새 릴릭은 메트릭 신호의 OTLP에 대한 지원을 제공한다. 업스트림 스펙의 만기는 실험입니다. 우리는 상류의 변화를 잠재적으로 위반할 것이다.

다음은 지원하는 OpenTelemetry 데이터 유형과 관련 매핑입니다. 자세한 내용은 모범 사례 가이드의 메트릭 섹션을 참조하세요.

측정항목 유형

지원

델타 합계

누적 합계

게이지

델타 막대 그래프

요약

누적 히스토그램

본보기

프리미티브 배열(동종)

✅ (중첩되지 않고 64개 이하의 요소여야 함)

로그

New Relic는 로그 신호의 OTLP에 대한 지원을 제공한다. 업스트림 스펙의 만기는 실험입니다. 우리는 상류의 변화를 잠재적으로 위반할 것이다.

OpenTelemetry 로그는 New Relic의 로그와 호환됩니다. OpenTelemetry 로그에는 쿼리로 로그 데이터를 패싯 또는 필터링하는 데 사용할 수 있는 차원에 직접 매핑되는 속성(이름-값 쌍) 및 리소스 속성이 선택적으로 포함됩니다. OpenTelemetry 로그 메타데이터(예: name , severity_texttrace_id )도 New Relic의 로그 관리 기능에 대한 차원에 직접 매핑됩니다. 현재 모든 OpenTelemetry 로그 메시지 유형을 지원합니다.

자세한 내용 은 모범 사례 가이드 의 로그 정보를 참조하세요.

기능

지원

설명

LogRecord 본문

지원되는 유형: string, boolean, int, double, 바이트

LogRecord 속성

지원되는 유형: string, boolean, int, double, 바이트

LogRecord 필드

예: 이름, 심각도_텍스트, 추적 ID

어레이 메시지(동종)

✅ (중첩되지 않고 64개 이하의 요소여야 함)

프리미티브 배열(동종)

✅ (중첩되지 않고 64개 이하의 요소여야 함)

다음 단계

Open텔레메트리 빠른 시작 을 수행하여 시작할 수 있습니다.

또한 새 계획으로 내보내는 데이터를 최대한 활용하기 위해 우수 사례 안내서를 검토하려고 합니다.

Copyright © 2022 New Relic Inc.