Datadogトラブルシューティングガイド
Datadogを運用していると、「メトリクスがグラフに表示されない」「アラートが期待通りに飛ばない」といった問題に遭遇することがあります。これらの問題は、Agentの設定、ネットワークの制限、あるいはDatadogプラットフォーム側の状況など、さまざまな要因が絡み合っています。
本記事では、問題の根本原因を迅速に特定するための体系的な切り分け方法と、チェックすべき重要ポイントについて解説します。
トラブルシューティングの基本フロー
問題が発生した際は、まず「どこでデータが止まっているか」をレイヤーごとに切り分けるのが鉄則です。
1. 問題の局所化 (Isolation)
以下の3つのポイントのどこに原因があるかを確認します。
- Agentレイヤー: ホスト上でAgentは起動しているか?特定のアダプターやインテグレーションがエラーを吐いていないか?
- 通信レイヤー: AgentからDatadogへの送信は成功しているか?プロキシやファイアウォールでブロックされていないか?
- プラットフォームレイヤー: Datadog側に遅延(バックログ)が発生していないか?APIキーやリージョン(サイト)の設定は正しいか?
シナリオ別チェックポイント
シナリオA:データが全く表示されない
- インフラストラクチャリストの確認: Datadog UIの [Infrastructure] -> [Infrastructure List] に対象のホストが表示されているか確認します。ここに表示がない場合、AgentがDatadogに一度も到達できていません。
- APIキーとリージョン (Site) の確認:
datadog.yamlのapi_keyが正しいこと、およびsiteパラメータが組織の所属するリージョン(例:datadoghq.comまたはdatadoghq.eu)と一致しているかを再確認してください。 - タイムピッカーの確認: 意外と多いのが、UI右上のタイムピッカーが過去の特定の時間を指しているケースです。「過去15分」などの相対指定、または「Live」モードになっているか確認しましょう。
シナリオB:特定のメトリクスやログだけ欠落している
- インテグレーションの状態確認: 各インテグレーション(MySQL, Nginx等)の設定ファイル(
.d/conf.yaml)でエラーが出ていないか、datadog-agent statusコマンドで確認します。 - サンプリングとフィルタリング: ログの場合、Datadog UI上の「除外フィルター (Exclusion Filters)」によって意図的にインデックス化が制限されていないか確認します。
- NTP(時刻のズレ)の確認: ホストの時刻が世界標準時から大きくズレていると、送信されたデータが古いものとみなされて破棄されることがあります。
ネットワーク接続の検証
Agentは通常、アウトバウンドで TCP/443 ポートを使用します。
- 接続テスト: Linuxであれば
curlコマンド等を使用して、Datadogのインテークエンドポイント(例:https://app.datadoghq.com)にアクセスできるか試行します。 - プロキシ設定: 企業内ネットワークでプロキシが必要な場合は、
datadog.yaml内にproxy設定が正しく記述されているかを確認してください。
まとめ
トラブルシューティングの第一歩は、慌てずに「Agentの状態確認」から始めることです。多くの場合、Agentのステータスコマンドやログの中に、解決のヒントとなるメッセージが残されています。
次章では、Agentそのものの詳細なデバッグ方法とコマンドについて深く掘り下げます。
出典: Datadog Docs - Agent Troubleshooting出典: Datadog Docs - Network Traffic