개요
애플리케이션 계측 (Datadog APM 사용)에는 다음이 포함됩니다.
SDK 설정: 애플리케이션에 Datadog SDK를 추가합니다.
스팬 생성: 관측성 데이터를 스팬으로 캡처합니다.
SDK가 로드되는 즉시 기본적으로 스팬이 자동 생성됩니다. 이를 자동 계측이라고 하며, 대부분의 사용자에게 충분한 가시성을 제공합니다. 더 많은 제어가 필요하면 선택적으로 사용자 지정 스팬을 추가할 수 있습니다.
참고: 이 단계는 트레이스를 수신하도록 Datadog Agent가 설치 및 구성되어 있다고 가정합니다.
시작하기
단일 단계 계측(권장)
단일 단계 계측(SSI)은 단일 명령으로 Datadog SDK를 자동 설치 및 구성합니다. 그 후 자동 계측이 즉시 지원되는 프레임워크와 라이브러리에서 트레이스를 수집하기 시작하며, 코드 변경은 필요하지 않습니다.
수동 설정 및 사용자 지정 스팬
관측성 요구가 증가함에 따라 더 많은 제어와 사용자 지정을 추가할 수 있습니다.
SDK 구성을 완전히 제어하려는 경우: SDK 동작 및 구성에 대한 세부적인 제어가 필요한 경우 수동으로 관리되는 Datadog SDK를 사용합니다.
코드 변경 없이 사용자 지정 스팬을 추가하려는 경우: 애플리케이션을 재배포하지 않고 Datadog UI에서 사용자 지정 스팬을 생성하려면 Dynamic Instrumentation을 사용합니다.
코드에서 사용자 지정 스팬을 추가하려는 경우: 코드 기반 사용자 지정 계측을 추가하여 사용자 지정 비즈니스 로직을 계측하거나 애플리케이션별 메타데이터를 스팬에 추가합니다.
이 옵션들은 함께 사용할 수 있습니다. 예를 들어 단일 단계 계측으로 시작한 후 특정 스팬에 대해 코드 기반 사용자 지정 계측을 추가하거나, 수동으로 관리되는 SDK와 Dynamic Instrumentation을 함께 사용하여 재배포 없이 스팬을 추가할 수 있습니다.
상세 비교
SDK 설정
단일 단계 계측은 대부분의 사용자에게 권장되는 시작 방법입니다. SDK 구성에 대해 더 많은 제어가 필요하면 대신 수동으로 관리되는 SDK를 사용할 수 있습니다.
| 단일 단계 계측(권장) | 수동으로 관리되는 SDK |
|---|
| 작동 방식 | Datadog이 단일 명령으로 런타임에 애플리케이션 프로세스에 SDK를 자동 설치하고 로드합니다. | 애플리케이션 코드 또는 빌드 프로세스에 SDK를 직접 설치하고 구성합니다. |
| 코드 변경 필요 여부 | 아니요 | 예 |
| 설정 복잡도 | 낮음 - 최소한의 구성만 필요 | 중간 - 환경 및 빌드 구성 필요 |
| 구성 제어 | 선택적 재정의를 지원하는 표준 기본값 | 환경 변수와 코드를 통한 완전한 제어 |
| 사용 시점 | 코드 변경 없이 서비스 전반에 걸쳐 빠르고 일관된 계측을 시작할 때 | SDK 동작 및 구성에 대한 세부적인 제어가 필요할 때 |
스팬 사용자 지정
자동 계측은 지원되는 프레임워크와 라이브러리에 대해 자동으로 스팬을 생성하여 추가 작업 없이 필수적인 관측성을 제공합니다. 사용자 지정 코드 경로에 대한 가시성이 필요하거나 애플리케이션별 데이터로 트레이스를 보강하려는 경우 Dynamic Instrumentation 또는 코드 기반 사용자 지정 계측을 사용하여 사용자 지정 스팬을 추가할 수 있습니다.
| Dynamic Instrumentation | 코드 기반 사용자 지정 계측 |
|---|
| 작동 방식 | Datadog UI에서 계측 규칙을 구성하며, 규칙은 런타임에 적용됩니다. | 애플리케이션 코드에 명시적인 트레이싱 API 호출을 추가합니다. |
| 코드 변경 필요 여부 | 아니요 | 예 |
| 배포 필요 여부 | 아니요 | 예(스팬 추가 또는 수정 시) |
| 사용 시점 | 코드 변경이나 재배포 없이 사용자 지정 스팬을 추가할 때 | 복잡한 계측 로직이 필요하거나 스팬을 코드에 영구적으로 정의하려는 경우 |
APM 설정 튜토리얼
다음 튜토리얼은 자동 계측과 사용자 지정 계측을 모두 사용하여 다양한 인프라 시나리오에서 샘플 애플리케이션에 대한 분산 트레이싱 설정 과정을 안내합니다.
추가 자료