Datadog Agent 入門

Datadog Agent の利用詳細については、左側のサイドバーからプラットフォームとなるOSを選択してください。

Datadog Agent ってなに ?

Datadog Agent は、ターゲットホスト上で動作するソフトウェアです。その役割は、システムの監視データやパフォーマンスデータをビジネスに有効に活用していくために、ターゲットホスト上のイベントやメトリクスを取得し、Datadogに送信することです。

Datadog Agent のソースコードは、Githubで公開しています。

プロキシが設置されている環境で、Datadog Agent がデータを送信する必要がある場合は、次のドキュメント”Network Traffic and Proxy Configuration”を参照してください。プロキシで開放するポートの情報に関しては、“Open Ports”の項目を参照してください。

Datadog Agent は、次の3つの要素で構成されています: Collector, Dogstatsd, Forwarder

  • Collector は、ターゲットホストのCPU やメモリ等の一般的なシステムメトリクスを取得すると共に、インストールされているIntegrations の情報を取得します。
  • Dogstatsd は、ターゲットホストで実行されているアプリケーションやコマンドラインスクリプトからカスタムメトリクスを送信することができるstatsdのサーバです。
  • Forwader は、dogstatsd とCollector の両方からデータを受け取り、queueの順番に従ってDatadogに送信します。

Collector, Dogstatsd, Forwarder は、1つのスーパーバイザープロセスによって制御されています。このようにDatadog Agent のプロセスを要素単位で分割しているのは、不要な要素プロセスを停止することにより、Datadog Agent 全体の間接負荷(オーバーヘッド)を削減することができるようにしているためです。(但し一般的な用途では、要素毎のプロセスの停止はお勧めしません。)

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

まだDatadog Agent をインストールしていない場合は、こちらのインストール手順をご覧ください。このページにたどり着く直前にDatadog Agent をインストールした場合は、メトリクスが表示されるようになるまでに数分かかることがあります。

インストールが完了し、基本的なメトリクスを確認するには、Metrics Explorer のページが最適です。

問題が発生していることが疑われる場合は、info コマンドを実行し、Datadog Agentのログを確認してください。 info コマンドと各ログの場所は、OSによって異なります。詳細については、左側のナビゲーションからお使いのOSを選択し、トラブルシューティングの項目を参照してください。

Datadog Agent のインストールに関わる問題

Datadog Agentのインストールプロセスが実行されない状況に遭遇した場合は、support@datadoghq.comにご連絡ください。 その際に、Datadog Agent をインストールしようとしているホストのOS名とバージョン、Datadog Agent のインストール方法とバージョンもご連絡ください。 更に、エラーメッセージを添付してください。

Datadog Agent のレポーティングに関わる問題

Datadog Agent のインストールは完了しているがダッシュボードにデータが表示さない場合は、infoコマンドを使ってトラブルシューティングをすることができます。各OSでのコマンドの使い方については、このページの左側のナビゲーションからお使いのOSを選択し確認してください。

問題に関連するエラーの内容は、infoコマンドを使って表示できましたか?

問題を探るためのエラー情報がinfoコマンドによって表示されない場合は、ログをチェックすると、エラー情報を発見できるかもしれません。ログの場所についても、先のOSのページをご確認ください。

ログをチェックしても問題が解決しない場合は、support@datadoghq.com宛に、infoコマンドの出力結果とlogファイルを添付し、ご連絡ください。

まずは、ホストの時刻を確認してください!

これまでの経験から、ホストの時刻が大幅に進んでいたり、遅れていたりした場合、メトリクスの送信に問題が起きることが確認されています。まずは、ホストが持っいる時刻が正常に設定されているかを確認してください。

ホストとDatadog側の時刻の差をチェックするには、次のコマンドを実行します:

date -u && curl -s -v https://app.datadoghq.com/intake 2>&1 | grep Date

このコマンドは、ホストの日付・時刻を表示し、その後Datadog側にリクエストを実行し、リクエストの結果からDatadog側の日付・時刻を取得し表示します。もし、ホストとDatadog側の時刻の差が数分以上ある場合は、ホストの時刻を正常に設定してください。

Integrationsの動作に関連する問題

Dataddogが提供しているIntegrations には、Datadog Agent の設定ファイルへの追記が必要なものがあります。

以下は、Integrationsのインストールに関連する問題のトラブルシュートのクイックガイドです:

  1. infoコマンドを実行します。 (コマンドの使い方は、各OSのページで確認してください)
  2. トラブルシューティング中のIntegrations名は、infoコマンドで表示されましたか?

    • いいえ、表示されていません。
      • 設定ファイルが正しい場所にあり、正しい名前であるか確認してください。
      • YAML のパーサやシンタックスチェッカーを使って文法を確認してください。各IntegrationsのYAML設定ファイルのサンプルは、Githubのリポジトリを参照してください。
      • YAML設定ファイルを移動したり、変更した場合は、Datadog Agent を再起動した後、再度infoコマンド実行し、Integrationsが表示されるか確認してください。
    • はい、表示されています。
      • Metrics Explorer のページでそのホストの一般的なメトリクス(CPU, HDD, メモリ等)が表示されているかを確認してください。例えば、Integrationsの設定を進めているホストのsystem.cpu.user選んでみてください。
      • メトリクスが全く表示されない場合は、ログファイルでエラー情報の状況を出力している部分がないか確認してください。その上で、エラー情報を含んでいそうなログファイルとinfoコマンドの出力ファイルとを添付し、support@datadoghq.com までお問い合わせください。