통합 태깅 고급 사용 가이드

개요

이 가이드는 특정 사용 사례를 기반으로 통합 서비스 태깅을 설정하고 이전하는 방법을 설명합니다.

커스텀 태그

,env, serviceversion태그는 통합 서비스 태깅을 위해 설정되어 있으므로 계속 사용할 수 있습니다. 그러나 커스텀 태그를 사용하여 통합 태깅 환경을 구현하려는 경우 아래에 나열된 몇 가지 옵션을 사용할 수 있습니다.

참고: 일부 제품은 임의의 태그를 지원하지만, 다른 제품은 더 구체적인 기대치를 가지고 있습니다. 따라서 한 데이터 소스에 다른 데이터 소스에 없거나 지원하지 않는 태그가 있는 경우 제품 간의 탐색이 어려울 수 있습니다.

컨테이너화된 환경

메트릭

태그를 데이터 포인트에 추가할 수 있으므로 원하는 태그를 설정할 수 있습니다. 자동 감지된 태그는 수집된 모든 메트릭에 자동으로 추가됩니다.

APM

envservice는 애플리케이션 성능 모니터링(APM)의 핵심 태그이므로 다른 이름의 태그로 대체할 수 없습니다. 그러나 애플리케이션 성능 모니터링(APM)을 사용하면 데이터를 env 보다 더 많은 기본 태그를 따라 집계할 수 있습니다. 트레이스 및 트레이스 메트릭에 추가되는 availability-zone와 같은 호스트 태그도 사용할 수 있습니다.

컨테이너와 연결된 자동 검색 태그는 스팬(span) 메타데이터의 container_info에 추가됩니다. 그러나 컨테이너 태그는 트레이스 메트릭의 포함된 태그 목록에 포함되지 않습니다.

로그

APM과 유사하게 service는 로그 데이터를 구성하는 데 사용되는 핵심 태그입니다. 또한 이 태그 없이 로그에서 관련된 애플리케이션 성능 모니터링(APM) 서비스로 연결할 수 없습니다.

메트릭과 마찬가지로 컨테이너에 대한 자동 검색 태그와 에이전트에 대한 호스트 태그가 모든 로그에 추가됩니다.

또한 로그 인코드에 커스텀 필드를 추가하여 Datadog 로그 처리 파이프라인의 다운스트림에서 태그 또는 속성에 매핑할 수 있습니다.

표준 라벨

Datadog은 표준 라벨과 환경 변수를 함께 사용하는 것을 권장합니다. 그러나 표준 라벨은 환경 변수 대신 사용할 수 있습니다. 특히 런타임에서 환경 변수 사용 시 이점이 없는 애플리케이션의 경우에는 더욱 그렇습니다. 예를 들어, Redis, MySQL, Nginx와 같은 타사 소프트웨어가 있습니다. 이러한 서비스들은 인프라스트럭처 메트릭과 통합 검사 데이터를 생성하므로, 해당 데이터에 env, service, version을 태그로 지정해야 합니다.

쿠버네티스 상태 메트릭에 env,serviceversion태그를 지정하려면 표준 라벨이 가장 쉬운 방법입니다. 에이전트는 컨테이너의 DD 환경 변수를 사용하여 메트릭에 태그를 지정할 수 없으므로 라벨을 사용하는 것이 가장 좋습니다.

환경을 라벨로 지정

env을 애플리케이션 성능 모니터링(APM) 트레이스 또는 로그와 같은 데이터 소스에 더 가깝게 설정하면 에이전트 env가 다를 수 있는 불일치를 방지하는 데 도움이 됩니다. env를 서비스 설정의 일부로 만들면 서비스 중심의 신뢰할 수 있는 소스를 보장합니다.

기존 쿠버네티스 태그 어노테이션과 함께 표준 라벨 사용

쿠버네티스 사용자는 이러한 일반 태그를 계속 사용할 수 있으나 특정 라벨을 사용할 시 다음과 같은 장점이 있습니다:

  • 쿠버네티스 다운워드 API를 사용하여 환경 변수 삽입을 위해 라벨을 직접 참조할 수 있습니다.
  • 서비스 표준 라벨을 사용하면 로그에 대한 서비스 정의를 단순화시킬 수 있습니다.

특정 컨테이너에 대한 표준 라벨 사용

DD 환경 변수는 컨테이너 레벨에서 삽입되기 때문에 컨테이너마다 다를 수 있습니다. 그러나 특정 컨테이너에 대해서도 표준 라벨을 사용하려면 컨테이너 특정 변형을 사용해야 합니다:

tags.datadoghq.com/<container>.env
tags.datadoghq.com/<container>.service
tags.datadoghq.com/<container>.version

표준 태그 삽입

Datadog 어드미션 컨트롤러는 표준 태그 라벨을 환경 변수로 변환하여 사용자의 애플리케이션 포드 템플릿에 삽입합니다. 이러한 환경 변수는 애플리케이션 성능 모니터링(APM) 트레이서, DogStatsD 클라이언트 및 Datadog 에이전트에서 사용됩니다. Datadog 에이전트는 다음 값을 태그에 매핑합니다:

tags.datadoghq.com/version -> DD_VERSION
tags.datadoghq.com/env -> DD_ENV
tags.datadoghq.com/service -> DD_SERVICE

어드미션 컨트롤러는 포드 라벨에서 해당 정보를 찾습니다. 포드 레벨에서 찾을 수 없는 경우 포드 소유자 개체의 라벨( 디플로이먼트, 작업, cron 작업, 스테이트풀셋)에서 정보를 가져옵니다.

비고

  • 새 애플리케이션 포드를 생성하기 전에 어드미션 컨트롤러를 배포하고 설정해야 합니다. 이미 존재하는 포드는 업데이트할 수 없습니다.
  • 이미 존재하는 경우, 어드미션 컨트롤러는 환경 변수 DD_VERSION, DD_ENVDD_SERVICE를 삽입하지 않습니다.
  • 어드미션 컨트롤러 삽입 기능을 사용하지 않도록 설정하려면 클러스터 에이전트 설정을 사용합니다:DD_ADMISSION_CONTROLLER_INJECT_CONFIG_ENABLED=false