Edited at
DatadogDay 7

dd-agentや各種インテグレーション関連に関連した問題のデバッグ方法(基礎知識編)

More than 1 year has passed since last update.

dd-agentをインストールした直後や新しくインテグレーションを追加した際に、メトリクスが送信できない状況が発生することがあります。こうした際にデバッグ方法を知っていると非常に便利です。今回2本立てで、dd-agentに関連したトラブルの簡単なデバッグ方法をまとめてみたい思います。


dd-agentの構成要素

dd-agentは、下記の4つの要素から構成されています。

1. Collector: dd-agentにインストールされているintegrationの種類に基づいてメトリクスを収集します。

2. Dogstatsd: アプリのコードからわたれるカスタムメトリクスを集計用をするためのバックエンドサーバです。

3. Forwarder: CollectorやDogstatsdから送信される情報を中継(bufferを含む)してDatadogのバックエンドに送信します。

4. Supervisord: 上記の3つのプロセスの起動を管理するsupervisor process


dd-agent内のコードとの対応:

構成機能名
コード

Collector
agnet.py

Dogstatsd
dogstats.py

Forwarder
ddagent.py

Supervisord
supervisor process

*実際のソースコードは、次のgithubレポジトリになります。


構成図:

上記に紹介した構成要素を図に書くと以下の様になります。

(外側の四角がSupervisordに当たります)

dd-agent構成図

*詳しくは、Datadogが提供している、次のドキュメントを参照してください。


logの保存先

以下に、デバッグに必要な情報が記録されているログファイルの保存先をリスト化します。


Debian/Ubuntu


  • /var/log/datadog/collector.log

  • /var/log/datadog/dogstatsd.log

  • /var/log/datadog/forwarder.log

  • /var/log/datadog/supervisord.log (since 3.8.0)


RHEL/CentOS/Fedora/Amazon Linux


  • /var/log/datadog/collector.log

  • /var/log/datadog/dogstatsd.log

  • /var/log/datadog/forwarder.log

  • /var/log/supervisor/datadog-supervisord.log (since 3.8.0)


Windows


v3.9.1以降のdd-agent

Windows Server 2008, Vistaと、それ以降のバージョン:

- C:\ProgramData\Datadog\logs\collector.log

- C:\ProgramData\Datadog\logs\ddagent.log

- C:\ProgramData\Datadog\logs\dogstatsd.log

- C:\ProgramData\Datadog\logs\forwarder.log

Windows Server 2003, XPと以前のバージョン:

- c:\Documents and Settings\All Users\Application Data\Datadog\logs\collector.log

- c:\Documents and Settings\All Users\Application Data\Datadog\logs\ddagent.log

- c:\Documents and Settings\All Users\Application Data\Datadog\logs\dogstatsd.log

- c:\Documents and Settings\All Users\Application Data\Datadog\logs\forwarder.log


Mac OS X


  • /var/log/datadog/collector.log

  • /var/log/datadog/dogstatsd.log

  • /var/log/datadog/forwarder.log

  • /var/log/supervisor/datadog-supervisord.log (since 3.8.0)


SmartOS


  • /opt/local/datadog/logs/supervisord/collector.log

  • /opt/local/datadog/logs/supervisord/dogstatsd.log

  • /opt/local/datadog/logs/supervisord/forwarder.log


ソースからagentをインストール (raspbianなど)


  • ~/.datadog-agent/supervisord/logs/supervisord.log

  • ~/.datadog-agent/supervisord/logs/collector.log

  • ~/.datadog-agent/supervisord/logs/dogstatsd.log

  • ~/.datadog-agent/supervisord/logs/forwarder.log

*詳しくは、Datadogが提供している、次のドキュメントを参照してください。