- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- Administrator's Guide
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
",t};e.buildCustomizationMenuUi=t;function n(e){let t='
",t}function s(e){let n=e.filter.currentValue||e.filter.defaultValue,t='${e.filter.label}
`,e.filter.options.forEach(s=>{let o=s.id===n;t+=``}),t+="${e.filter.label}
`,t+=`추론 서비스는 Datadog가 서비스 종속성을 나타내는 방식을 개선합니다. 이 문서에서는 변경 사항과 구성을 조정하는 방법을 설명합니다.
Datadog를 사용하여 클라이언트 스팬의 서비스 이름(span (스팬).kind:client
)을 변경해 데이터베이스, 대기열 및 제 3자 종속성을 나타낼 수 있습니다. 예를 들어, 서비스 A
에서 PostgreSQL 데이터베이스로의 클라이언트 호출은 service:postgres
또는 service:A-postgres
로 태그됩니다. 이 가이드에서는 스팬 서비스 이름을 변경하는 것을 서비스 재정의라고 표기합니다. 초기 서비스 이름은 기본 서비스라고 표기합니다.
이 접근 방식에서는 auth-dotnet
서비스에서 PostgreSQL 데이터베이스로의 클라이언트 호출을 나타내는 스팬에 service:auth-dotnet-postgres
태그를 지정합니다. 서비스 맵에서 이러한 종속성은 아래와 같이 별도의 서비스로 표현됩니다.
종속성은 클라이언트 스팬에서 수집된 스팬 속성(예: db.system
, db.name
)에서 자동으로 추론됩니다. 클라이언트 스팬은 기본 서비스 이름을 유지하며 데이터베이스는 다른 속성을 사용하여 추론됩니다. 따라서 이제 클라이언트 스팬에서 service
속성을 변경할 필요가 없습니다.
이전 예시로 돌아가보면, 이제 클라이언트 스팬은 기본 서비스 이름 auth-dotnet
로 태그 지정되고 데이터베이스는 db.name:user-db
및 db.system:postgres
과 같은 속성에서 추론됩니다. 서비스 맵 표시는 다음과 같습니다.
추론된 서비스 종속성을 사용하면 서비스 재정의가 서비스 목록과 맵을 오염시킬 수 있습니다. 서비스 맵에는 다음과 같은 노드가 순서대로 표시됩니다.
auth-dotnet
).auth-dotnet-postgres
) .user-db
) .서비스 재정의(auth-dotnet-postgres
)는 기본 서비스와 추론된 서비스 사이의 직접 연결을 끊습니다. 이제 데이터베이스 종속성이 추론된 서비스에 의해 올바르게 표현되므로 필요가 없습니다.
Datadog 추적 라이브러리는 통합에서 데이터베이스, 대기열 또는 타사 서비스 종속성을 나타내기 위해 클라이언트 스팬에 다른 서비스 이름을 자동으로 설정합니다. 이 가이드에서는 이러한 유형의 서비스 재정의를 통합 서비스 재정의라고 표기합니다.
예를 들어 서비스의 특정 구성 요소(공유 라이브러리, 미들웨어 레이어)의 가시성을 확보하기 위해 사용자가 서비스 이름을 수동으로 설정할 수도 있습니다. 이 가이드에서는 이러한 유형의 서비스 재정의를 커스텀 서비스 재정의라고 표기합니다.
서비스 재정의의 중요도를 낮추기 위해 APM 제품 페이지에는 서비스 재정의가 시각적으로 다르게 처리됩니다.
서비스 재정의된 서비스의 경우 서비스 페이지 헤더에 해당 플래그가 표시되어 있습니다. 마우스 커서를 올리면 서비스 이름이 재정의된 기본 서비스 목록을 커스텀 방식으로 찾거나 통합의 기본 설정으로 찾을 수 있습니다.
서비스 맵에서 서비스 재정의는 기본 서비스에서 추론된 서비스로 이어지는 에지의 일부로 표시됩니다.
트레이스 사이드 패널에서 클라이언트 스팬 헤더는 기본 서비스에서 추론된 서비스로의 호출을 나타냅니다. 개요 섹션의 상단에는 기본 서비스 이름, 재정의된 서비스 이름 및 추론된 엔티티 이름에 대한 정보도 표시됩니다.
통합 서비스 재정의를 제거하려면 환경 변수를 설정하세요.
DD_TRACE_REMOVE_INTEGRATION_SERVICE_NAMES_ENABLED=true
이렇게 하면 service
속성이 항상 통합 이름(예:*-postgres
, *-http-client
)을 추가하는 대신, 기본 서비스 이름을 사용하도록 할 수 있습니다.
변경으로 인해 중요한 자산(대시보드, 모니터, 보존 필터 등)이 영향을 받지 않도록 서비스별로 서비스 재정의를 점진적으로 제거하는 것이 좋습니다. 새 모델로 원활하게 전환하려면 상세 지침을 따르세요.
예시:
service:<DD_SERVICE>-grpc-client
로 태깅service:grpc-client
로 태깅DD_TRACE_REMOVE_INTEGRATION_SERVICE_NAMES_ENABLED
옵션을 true
로 설정하면 지원되는 모든 추적 라이브러리가 다운스트림 서비스로의 호출을 캡처하는 클라이언트 스팬에 호출 서비스 이름 service:<DD_SERVICE>
로 태그를 지정합니다. 이렇게 하면 모든 스팬이 항상 기본 서비스 이름으로 태그 지정됩니다. peer.*
속성은 호출된 종속성(예: 데이터베이스 또는 대기열)을 설명하는 데 사용됩니다.
시나리오 | 서비스 이름 | 추가 peer.* 속성 |
---|---|---|
추론된 서비스를 사용하지 않고 서비스 재정의를 사용하는 경우 | service:my-service-grpc-client 또는 service:grpc-client | peer.* 속성이 설정되지 않음 |
추론된 서비스 사용 및 서비스 재정의 사용 안 함 | service:myservice | @peer.service:otherservice (여기서 otherservice 는 gRPC로 호출되는 원격 서비스 이름) |
마찬가지로 MySQL 데이터베이스로의 호출을 나타내는 스팬의 경우에도 마찬가지입니다.
시나리오 | 서비스 이름 | 추가 peer.* 속성 |
---|---|---|
추론된 서비스를 사용하지 않고 서비스 재정의를 사용하는 경우 | service:my-service-MySQL 또는 service:MySQL | peer.* 태그가 설정되지 않음 |
추론된 서비스 사용 및 서비스 재정의 사용 안 함 | service:myservice | @peer.db.name:user-db , @peer.db.system:MySQL |
재정의 서비스 이름을 사용하여 쿼리가 포함될 수 있는 기존 자산을 검색합니다.
기본 서비스 이름(service:<DD_SERVICE>
)을 사용하도록 이 쿼리를 업데이트합니다. 이렇게 하면 서비스 재정의 제거 시에도 쿼리가 계속 일치할 수 있습니다.
통합 서비스 재정의에 DD_TRACE_REMOVE_INTEGRATION_SERVICE_NAMES_ENABLED=true
를 설정합니다.
참고: 위의 구성은 통합 서비스 재정의만 제거합니다. 커스텀 서비스 재정의는 코드에서 직접 제거해야 합니다.
기본 DD_SERVICE
이름과 다른 스팬에 설정된 서비스 이름입니다. 일부 Datadog 연동 서비스에서 자동으로 설정하거나 사용자가 수동으로 설정할 수 있습니다.
기본값은 DD_SERVICE
이름입니다.
추가 유용한 문서, 링크 및 기사: