개요

이 계측 메서드를 사용하면 Linux Azure App Service 워크로드에 다음과 같은 추가 기능을 이용할 수 있습니다:

  • 자동 계측을 사용한 전체 분산 APM 추적.
  • 관련 Azure App Service 메트릭과 메타데이터를 보여주는 사용자 지정 APM 서비스 및 트레이스 보기.
  • 스팬을 사용자 지정할 수 있는 수동 APM 계측 지원.
  • 애플리케이션 로그에 Trace_ID 삽입.
  • DogStatsD를 이용해 커스텀 메트릭 제출 지원.

이 솔루션에서는 애플리케이션 계측과 설정 관리를 위해 시작 명령 설정 및 Linux Azure App Service에 대한 애플리케이션 설정을 사용합니다. Java, Node, .NET, PHP, Python을 지원합니다.

설정

애플리케이션 설정

애플리케이션을 계측하려면, 다음 키-값 쌍을 Azure 설정의 애플리케이션 설정 아래에 추가합니다.

Azure App Service 설정: Azure UI의 설정 섹션 아래에 애플리케이션 설정. DD_API_KEY, DD_SERVICE, DD_START_APP 3개의 설정이 있음.
  • DD_API_KEY는 Datadog API 키입니다.
  • DD_CUSTOM_METRICS_ENABLED(선택)은 커스텀 메트릭을 활성화합니다.
  • DD_SITE는 Datadog 사이트 파라미터입니다. 귀하의 사이트는 입니다. 기본값은 datadoghq.com입니다.
  • DD_SERVICE는 이 프로그램에 사용된 서비스 이름입니다. 기본값은 package.json의 이름 필드 값입니다.
  • DD_START_APP는 애플리케이션을 시작할 때 사용되는 명령입니다. 예를 들어, node ./bin/www입니다(Tomcat에서 실행하는 애플리케이션에는 필요 없음).

시작 명령 확인

기본 제공 런타임의 코드 배포 옵션으로 빌드된 Linux Azure App Service Web Apps의 경우 언어에 따라 시작 명령이 다릅니다. 기본값은 Azure 설명서에 안내되어 있습니다. 다음 예를 참고하세요.

DD_START_APP 환경 변수에서 이 값을 설정하세요. 아래 예는 datadog-demo라는 이름의 애플리케이션에 대한 예입니다.

런타임DD_START_APP 예시 값설명
Node.jsnode ./bin/wwwNode PM2 설정 파일이나 스크립트 파일 실행.
.NET Coredotnet datadog-demo.dll기본값으로 내 웹 앱 이름을 사용하는 .dll 파일 실행.

참고: 명령에서 사용하는 .dll 파일 이름이 내 .dll 파일 이름과 일치해야 합니다. 경우에 따라 일치하지 않을 수도 있습니다.
PHPcp /home/site/wwwroot/default /etc/nginx/sites-available/default && service nginx reload스크립트를 바른 위치로 복사하고 애플리케이션 실행.
파이썬(Python)gunicorn --bind=0.0.0.0 --timeout 600 quickstartproject.wsgi커스텀 시작 스크립트. 이 예시에서는 Gunicorn 명령을 실행해 Django 앱을 시작합니다.
Javajava -jar /home/site/wwwroot/datadog-demo.jar앱을 시작하는 명령. Tomcat에서 실행하는 애플리케이션에는 필요하지 않습니다.

참고: 새 설정을 저장하면 애플리케이션이 재시작됩니다.

일반 설정

일반 설정으로 가서 다음을 시작 명령 필드에 추가하세요:

curl -s https://raw.githubusercontent.com/DataDog/datadog-aas-linux/v1.7.0/datadog_wrapper | bash
Azure App Service 설정: Azure UI 설정 섹션 아래에 있는 스택 설정. 스택 아래 주 버전과 부 버전 필드에 '시작 명령' 필드가 있고 위의 curl 명령이 입력되어 있음.

릴리스에서 datadog_wrapper 파일을 다운로드하고 Azure CLI 명령을 사용하여 애플리케이션에 업로드합니다:

  az webapp deploy --resource-group <group-name> --name <app-name> --src-path <path-to-datadog-wrapper> --type=startup

트레이스 보기

새 애플리케이션이 저장되면 Azure는 애플리케이션을 재시작합니다. 시작 명령을 추가하고 저장한 경우에는 재시작이 필요할 수 있습니다.

애플리케이션을 재시작한 후 Datadog의 APM 서비스 페이지에서 서비스 이름(DD_SERVICE)을 검색하여 트레이스를 볼 수 있습니다.

커스텀 메트릭

DogStatsD를 사용해 애플리케이션에 대한 커스텀 메트릭을 활성화하려면 애플리케이션 설정에서 DD_CUSTOM_METRICS_ENABLED를 추가하고 true로 설정하세요.

메트릭을 제출하도록 애플리케이션을 설정하려면 런타임에 맞는 적절한 단계를 따르세요.

문제 해결

예상과 다른 트레이스나 커스텀 메트릭 데이터일 경우, App Service 로그를 활성화하여 디버깅 로그를 받으세요.

Azure App Service 설정: Azure UI 설정의 모니터링 섹션 아래에 있는 App Service 로그. '애플리케이션 로깅' 옵션이 '파일 시스템'으로 설정되어 있음.

로그 스트림의 내용을 Datadog 고객 지원팀과 공유하세요.

참고 자료

PREVIEWING: mervebolat/span-id-preprocessing