Agentのトラブルシューティング ​

Datadog Agentは非常に安定したソフトウェアですが、環境(権限、ネットワーク、OS設定)の影響を受けて正常に動作しない場合があります。こうした際、Agent自体に備わっている自己診断コマンドを使いこなすことで、解決までの時間を劇的に短縮できます。

本記事では、エンジニアが知っておくべきAgentの重要なCLIコマンドと、調査の起点となるログの確認方法について解説します。

必須のトラブルシューティングコマンド ​

Datadog Agentがインストールされたホスト上で以下のコマンドを実行することで、内部状態を詳細に把握できます。(※Linux/macOSでは通常 sudo が必要です)

1. datadog-agent status ​

Agentの現在の健康状態を確認する最も基本的なコマンドです。

  • 確認内容: エージェント本体と各インテグレーション(コレクター)の稼働状況、NTPオフセット(時刻のズレ)、API送信の成功数、収集されているメトリクス数などが表示されます。
  • 注目ポイント: Collector セクションで、各チェックの横に Error が出ていないかを確認します。

2. datadog-agent flare ​

設定ファイルとログを一つのアーカイブにまとめ、Datadogサポートへ送信するためのコマンドです。

  • 用途: サポートへ問い合わせる際に必ず求められる資料です。
  • セキュア設計: 送信前に、パスワードやAPIキーなどの機密情報は自動的にマスク(伏せ字)されます。

3. datadog-agent diagnose ​

接続性やファイル権限など、Agentが正常に動作するための前提条件を自動チェックします。

  • 用途: 「なぜかデータが届かない」という初期段階で実行すると、通信ブロックや権限不足などの原因を即座に指摘してくれます。

4. datadog-agent configcheck ​

現在読み込まれている全ての設定情報を表示します。

  • 用途: 環境変数の上書き設定や、オートディスカバリー(Auto Discovery)が正しく機能しているかを確認するのに役立ちます。

5. datadog-agent check [check_name] ​

特定のインテグレーションを単発で実行し、出力を確認します。

  • 例: datadog-agent check mysql
  • 用途: 設定変更後に、実際にメトリクスが正しく取得できるかを即座に検証できます。

ログファイルの場所 ​

OSによってログファイルの保存場所が異なります。問題解決のヒントが最も集まる場所です。

OSログファイルのパス
Linux/var/log/datadog/agent.log
WindowsC:\ProgramData\Datadog\logs\agent.log
macOS/opt/datadog-agent/logs/agent.log

Agentにおける「よくある問題」と解決策 ​

権限不足 (Permission Denied) ​

Agentの実行ユーザー(通常 dd-agent)が、監視対象のログファイルやDockerソケット、プロセス情報にアクセスできないケースです。

  • 対策: diagnose コマンドで権限エラーが出ている箇所を特定し、適切なユーザーグループ(例: docker グループ)への追加やパーミッション修正を行います。

NTPによる時刻のズレ (Clock Drift) ​

ホストのシステム時刻がDatadog側と大きく(通常10分以上)ズレている場合、データが有効期限切れとして破棄されます。

  • 対策: status コマンドでNTPの状況を確認し、必要に応じてNTPクライアント(Chronyなど)を再起動・調整します。

まとめ ​

Agentのトラブルシューティングは、「statusで全体の把握」「diagnoseで前提条件の確認」「ログで詳細なエラー特定」の3ステップで行うのが効率的です。もしこれらで解決しない場合は、迷わず flare を取得して次のステップ(サポートへの問い合わせ)へ進みましょう。


出典: Datadog Docs - Agent Commands出典: Datadog Docs - Agent Log Files