Windows への DDOT コレクターのインストール 概要 このガイドに従って、Windows ベースのベアメタルホストおよび仮想マシンに Datadog Distribution of OpenTelemetry (DDOT) コレクターをインストールします。
要件 このガイドの手順を実行するには、以下の準備が必要です。
Datadog アカウント :
まだお持ちでない場合は、Datadog アカウントを作成 してください。 Datadog API キー を見つけるか、作成します。ソフトウェア :
サポートされている Windows バージョン (Windows Server 2016 以降または Windows 10 以降)。詳細については、サポートされているプラットフォーム を参照してください。 ネットワーク :
When using the Datadog SDK with OpenTelemetry API support, telemetry is routed to different components depending on the signal source. Ensure the following ports are accessible on your Datadog Agent or Collector:
Signal Source Protocol Port Destination Component OTel Metrics and Logs API OTLP (gRPC/HTTP) 4317 / 4318 Datadog Agent OTLP Receiver or DDOT Collector Datadog Tracing Datadog trace intake 8126 (TCP) Datadog Trace Agent Runtime Metrics DogStatsD 8125 (UDP) DogStatsD Server
OpenTelemetry Collector を使用して Datadog Agent をインストールする このインストールは、Datadog SDK + DDOT および OpenTelemetry SDK + DDOT 構成の両方に必要です。Datadog SDK は OpenTelemetry API を実装していますが、OTLP メトリクスとログを処理して転送するために DDOT Collector が必要です。
インストール Windows ホストに DDOT コレクターをインストールするには、次の MSI コマンドを使用します。
$p = Start-Process -Wait -PassThru msiexec -ArgumentList '/qn /i "https://windows-agent.datadoghq.com/datadog-agent-7-latest.amd64.msi" /log C:\Windows\SystemTemp\install-datadog.log APIKEY="<DATADOG_API_KEY>" SITE=" " DD_OTELCOLLECTOR_ENABLED=true'
if ( $p . ExitCode -ne 0 ) {
Write-Host "msiexec failed with exit code $( $p . ExitCode ) please check the logs at C:\Windows\SystemTemp\install-datadog.log" -ForegroundColor Red
}
このコマンドは、コア Datadog Agent パッケージと、その横で実行される DDOT コレクターの両方をインストールします。
注 : Agent v7.78 以降の場合、Datadog Agent がホストに既にインストールされていれば、DDOT コレクターを個別にインストールできます。管理者特権の PowerShell セッション から実行します:
& " $env:ProgramFiles \Datadog\Datadog Agent\bin\agent.exe" otel install
検証 インストールを検証するには、Agent のステータスコマンド を実行します。
& " $env:ProgramFiles \Datadog\Datadog Agent\bin\agent.exe" status
インストールに成功すると、次のような Agent 情報で始まる Agent Status レポートが返されます。
====================
Agent (v7.x.x)
====================
Status date: 2025-08-22 18:35:17.449 UTC (1755887717449)
Agent start: 2025-08-22 18:16:27.004 UTC (1755886587004)
Pid: 2828211
Go Version: go1.24.6
Python Version: 3.12.11
Build arch: amd64
Agent flavor: agent
FIPS Mode: not available
Log Level: info
OTel Agent ステータスセクションもあり、OpenTelemetry 情報が含まれています:
==========
OTel Agent
==========
Status: Running
Agent Version: 7.x.x
Collector Version: v0.129.0
Receiver
==========================
Spans Accepted: 0
Metric Points Accepted: 1055
Log Records Accepted: 0
Exporter
==========================
Spans Sent: 0
Metric Points Sent: 1055
Log Records Sent: 0
DDOT コレクターを有効にする Datadog Agent の構成ファイルは、C:\ProgramData\Datadog\datadog.yaml に自動的にインストールされます。インストーラーは、DDOT コレクターを有効にするために、以下の構成設定を C:\ProgramData\Datadog\datadog.yaml に追加します。
Copy
otelcollector :
enabled : true
agent_ipc :
port : 5009
config_refresh_interval : 60 DDOT は、デフォルトで OpenTelemetry Collector をポート 4317 (grpc) および 4318 (http) に自動的にバインドします。
(オプション) 追加の Datadog 機能を有効にする これらの機能を有効にすると、追加料金が発生する場合があります。
料金ページ を確認し、進む前にカスタマーサクセスマネージャーに相談してください。
利用可能なオプションの完全な一覧表示については、C:\ProgramData\Datadog\datadog.yaml.example にある完全にコメント化されたリファレンスファイルを参照してください。または、GitHub の Windows 用の Agent 構成ファイルの例 を参照してください。
追加の Datadog 機能を有効にする際は、Datadog 環境変数に依存するのではなく、必ず Datadog または OpenTelemetry Collector の設定ファイルを使用してください。
インストーラーは、出発点として使用できるサンプルの OpenTelemetry Collector 構成を C:\ProgramData\Datadog\otel-config.yaml に提供します。
インストールのサンプル otel-config.yaml は次のようになります:
Copy
receivers :
prometheus :
config :
scrape_configs :
- job_name : "otelcol"
scrape_interval : 60s
static_configs :
- targets : [ "0.0.0.0:8888" ]
otlp :
protocols :
grpc :
endpoint : 0.0.0.0 : 4317
http :
endpoint : 0.0.0.0 : 4318
exporters :
debug :
verbosity : detailed
datadog :
api :
key : <DATADOG_API_KEY>
site : <DATADOG_SITE>
sending_queue :
batch :
flush_timeout : 10s
processors :
infraattributes :
cardinality : 2
cumulativetodelta :
connectors :
datadog/connector :
traces :
compute_top_level_by_span_kind : true
peer_tags_aggregation : true
compute_stats_by_span_kind : true
service :
pipelines :
traces :
receivers : [ otlp]
processors : [ infraattributes]
exporters : [ datadog, datadog/connector]
metrics :
receivers : [ otlp, datadog/connector, prometheus]
processors : [ infraattributes, cumulativetodelta]
exporters : [ datadog]
logs :
receivers : [ otlp]
processors : [ infraattributes]
exporters : [ datadog] 主要コンポーネント Datadog にテレメトリデータを送信するために、構成内で次のコンポーネントが定義されています:
Datadog コネクタ Datadog コネクタ は Datadog APM トレースメトリクスを計算します。
Copy
connectors :
datadog/connector :
traces: Datadog エクスポーター Datadog エクスポーター はトレース、メトリクス、およびログを Datadog にエクスポートします。
Copy
exporters :
datadog :
api :
key : <DATADOG_API_KEY>
site : <DATADOG_SITE>
sending_queue :
batch :
flush_timeout : 10s 注 : key が指定されていないかシークレットに設定されている場合、または site が指定されていない場合、システムはコア Agent の設定から値を使用します。デフォルトでは、コア Agent はサイトを datadoghq.com (US1) に設定します。
Prometheus レシーバー Prometheus レシーバー はメトリクスパイプラインのために OpenTelemetry Collector からヘルスメトリクスを収集します。
Copy
receivers :
prometheus :
config :
scrape_configs :
- job_name : "otelcol"
scrape_interval : 60s
static_configs :
- targets : [ "0.0.0.0:8888" ] 詳細については、コレクターのヘルスメトリクス ドキュメントを参照してください。
Datadog にテレメトリを送信する テレメトリデータを Datadog に送信するには:
Instrument your application Configure the application Correlate observability data Run your application アプリケーションをインスツルメントする OpenTelemetry API を使用して アプリケーションをインスツルメントします。
例として、すでにインスツルメント済みの カレンダーサンプルアプリケーション を使用できます。以下のコードは、OpenTelemetry のアノテーションと API を使用して CalendarService.getDate() メソッドをインスツルメントします:
@WithSpan ( kind = SpanKind . CLIENT )
public String getDate () {
Span span = Span . current ();
span . setAttribute ( "peer.service" , "random-date-service" );
...
} アプリケーションは、同じホスト上の DDOT Collector にデータを送信する必要があります。OTEL_EXPORTER_OTLP_ENDPOINT 環境変数がアプリケーションに設定されていることを確認してください。
サンプルアプリケーションを使用している場合、run-otel-local.sh が必要な環境変数を設定し、アプリケーションを実行します:
export OTEL_METRICS_EXPORTER = "otlp"
export OTEL_LOGS_EXPORTER = "otlp"
export OTEL_EXPORTER_OTLP_ENDPOINT = "http://localhost:4317"
export OTEL_EXPORTER_OTLP_PROTOCOL = "grpc" 注 : このスクリプトは、Git for Windows に含まれている Git Bash で実行できます。
可観測性データを相関付けする unified service tagging により、Datadog 内の可観測性データ同士が結び付けられ、一貫性のあるタグを使用してメトリクス、トレース、ログを横断的に確認することができます。
ベアメタル環境では、env、service、および version は OpenTelemetry リソース属性の環境変数を通じて設定されます。DDOT Collector はこのタグ付け構成を検出し、アプリケーションから収集したデータに適用します。
サンプルアプリケーションでは、これは run-otel-local.sh で行われます:
export OTEL_RESOURCE_ATTRIBUTES = "service.name=my-calendar-service,service.version=1.0,deployment.environment.name=otel-test,host.name=calendar-host" アプリケーションを実行する アプリケーションを再デプロイして、環境変数に加えた変更を適用します。更新された構成が有効になると、メトリクス、トレース、ログに対して unified service tagging が完全に有効になります。
Datadog で可観測性データを確認する Datadog を使用して、アプリケーションの可観測性データを確認します。
Fleet Automation Datadog Agent、DDOT、およびアップストリームの OpenTelemetry Collector の構成を確認してください。
インフラストラクチャー監視 ランタイムおよびインフラストラクチャーメトリクスを表示して、ホストのパフォーマンスを視覚化、監視、測定します。
ログ アプリケーションおよびシステムの運用を監視し、トラブルシューティングを行うにはログを確認します。
トレース アプリケーションが処理したリクエストの状態とパフォーマンスを把握するため、トレースとスパンを表示し、同じトレース内でインフラストラクチャーメトリクスを関連付けます。
ランタイムメトリクス アプリケーションのランタイム (JVM) メトリクスを監視します。
コレクターのヘルスメトリクス DDOT Collector からメトリクスを表示し、Collector のヘルスを監視します。
参考資料