OpenTelemetry 기록용 API , 범위 데이터 내보내기용 SDK , 경계를 넘나드는 추적을 위한 예외 없이 풍부한 추적 생태계를 제공합니다.
이 페이지에서는 뉴렐릭이 뉴렐릭 OTLP 엔드포인트를 통해 수신한 OpenTelemetry 범위를 처리하는 방법을 설명합니다. OpenTelemetry 트레이스를 뉴렐릭으로 보내려면 OTLP 엔드포인트를 통해 뉴렐릭 OpenTelemetry 수집기로 데이터를 내보내도록 트레이스 소스를 구성해야 합니다. 다음 페이지를 참조하세요.
- 엔드포인트 설정 요구 사항은 뉴렐릭 OTLP 엔드포인트를 참조하세요.
- OpenTelemetry를 사용하여 서비스를 구성하는 방법에 대한 자세한 내용은 OpenTelemetry APM 모니터링을 참조하세요.
OTLP 범위 매핑
뉴렐릭은 OTLP 스팬을 Span 데이터 유형에 매핑합니다. 아래 표는 트레스의 proto 메시지 정의 의 필드가 해석되는 방식을 설명합니다.
OTLP 프로토 필드 | 뉴렐릭 |
|---|---|
| 각 핵심 가치는 |
|
|
|
|
| 각 핵심 가치는 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 각 핵심 가치는 |
|
|
| 각 이벤트는 소스 범위를 참조하는 |
| 에 |
| 에 |
| 각 핵심 가치는 속성으로 저장됩니다. |
| 에 |
|
|
|
|
|
|
표 각주
[1] 리소스 속성, 범위 속성, 범위 속성 및 최상위 범위 필드에서 충돌이 발생하는 경우 우선순위(가장 높은 순서에서 가장 낮은 순서)는 최상위 Span.* 필드 > Span.attributes > ScopeSpans.InstrumentationScope.attributes > ResourceSpans.Resource.attributes 입니다.
뉴웰릭 OTLP 엔드포인트 지원 속성 유형 에 대한 자세한 내용은 OTLP 속성 유형을 참조하고 속성에 대해 수행되는 유효성 검사에 대한 자세한 내용은 OTLP 속성 제한을 참조하세요 .
스팬 링크
뉴렐릭은 OpenTelemetry 스팬 링크를 지원합니다. 이를 통해 직접적인 부모-자식 연결이 없는 스팬 간에 인과 관계를 생성할 수 있습니다. 스팬 링크는 포인터, 이벤트 스트림 및 일괄 처리 시스템과 같은 프로세서 경계를 넘어 분할되는 독립 트레이스를 이해하는 데 필수적입니다.
span 링크는 언제 사용해야 할까요?
다음과 같은 상황에서 span 링크를 사용하십시오.
- Message queue producers and consumersAWS SQS, RabbitMQ 또는 Kafka와 같은 큐에서 메시지를 처리할 때 소비 스팬을 생산 스팬에 연결합니다.
- Fan-in patterns: 여러 생산자 트레이를 출력을 집계하는 단일 소비자 트레이에 연결합니다.
- Batch processing: 일괄 처리된 메시지를 개별 발신지로 되돌려 보내는 링크 범위입니다.
- Long-running workflows: 일반적인 트레이스 지속 시간 제한을 초과하는 워크플로우 단계에 걸쳐 스팬을 연결합니다.
스팬 링크 구현
OpenTelemetry 측정 및 계측에서 스팬 링크를 구현하려면 다음이 필요합니다.
- 들어오는 메시지 또는 이벤트에서 트레이스 섹션을 추출합니다.
- 컨슈머에서 새 스팬을 시작할 때 스팬 링크를 생성합니다.
- 트레이스 컨텍스트가 메시징을 통해 전파되는지 확인하세요.
다음 예시들은 다양한 언어에서 스팬 링크를 구현하는 방법을 보여줍니다.
span 링크 사용 모범 사례
스팬 링크를 구현할 때는 다음 모범 사례를 따르세요.
Always propagate trace context: 메시지 헤더에 W3C 추적 컨텍스트(
traceparent및tracestate헤더)가 포함되어 있는지 확인하거나,Validate span context스팬 링크를 생성하기 전에 추출된 스팬 컨텍스트가 유효한지 항상 확인하십시오. 유효하지 않은 컨텍스트에서는 링크가 생성되어서는 안 됩니다.
Use appropriate span kinds메시지 게시 기간에는
PRODUCER유형을, 메시지 처리 기간에는CONSUMER유형을 설정합니다.Add messaging attributes: 메시지 시스템에 대한 의미 규칙(예:
messaging.system,messaging.destination,messaging.operation)을 포함하여 컨텍스트를 제공합니다.Consider sampling: 링크된 두 트레이스가 모두 샘플링되어야 뉴렐릭에 나타납니다. 스팬 링크를 사용하는 중요한 샘플링 전략을 조정합니다.
Handle batch processing carefully일괄 메시지를 처리할 때는 추적성을 유지하기 위해 각 메시지에 대해 개별 스팬 링크를 생성하십시오.
뉴럴릭에서 span 링크 보기
측정, 계측에 스팬 링크를 구현하면 뉴럴릭 UI 에서 해당 링크를 보고 탐색할 수 있습니다.
- aTrays의 트레이스 세부정보 페이지 로 이동하세요.
- 링크가 포함된 스팬의 수를 보여주는 필터 바에서 '스팬 링크' 배지를 찾아보세요.
- 링크가 포함된 스팬을 선택하면 스팬 세부 정보 창에서 Span links 탭이 표시됩니다.
- 관련 트레이스를 탐색하려면 연결된 트레이스를 클릭하세요.
UI에서 스팬 링크를 사용하는 방법에 대한 자세한 내용은 스팬 링크 이해를 참조하세요.