Dogshell

dogshell というラッパーを使用して、ターミナル/シェルから Datadog API を使用できます。

セットアップ

Dogshell には、公式にサポートされた datadogpy Python ライブラリが付属しており、DogStatsD で Datadog にデータを送信するためによく使用されます。インストール方法については、 datadogpy GitHub リポジトリを参照してください。

このライブラリをインストールすると、ターミナル/シェルで dog コマンドを使用できるようになりますが、その際に「初期化」が必要です。初期化するには、このコマンドに API キーとアプリケーションキーを提供することで、アカウントとの間でデータを送受信できるようになります。初めて dog コマンドを実行しようとすると、初期化が必要と認識され、2 つのステップからなるプロセスが実行されます。

初期化セットアップがトリガーされる dog コマンドの例として (古い dog コマンドでも機能します)、以下を実行します。

dog metric post test_metric 1

.dogrc ファイルがまだ作成されていない (dogshell が初期化されていない) 場合は、以下のような応答が返されます。

~/.dogrc does not exist. Would you like to create it? [Y/n]

「Y」を入力します。次の応答があります。

What is your api key? (Get it here: https://app.datadoghq.com/organization-settings/api-keys)

API キーを貼り付け、次に進みます。

What is your application key? (Generate one here: https://app.datadoghq.com/organization-settings/api-keys)

アプリケーションキーを貼り付けます。以下のように終了します。

Wrote ~/.dogrc.

次に、ターミナル/シェルからすばやく Datadog API を使用できるよう dog コマンドを使用します。dog コマンドの詳細なヘルプと情報については、dog -h を実行してください。

もし、自分で .dogrc ファイルを書きたい場合は、このファイルの内容は次のようになります。

[Connection]
apikey = <DATADOG_API_KEY>
appkey = <YOUR_APPLICATION_KEY>
api_host = https://datadoghq.com

apikey = <DATADOG_API_KEY>
appkey = <YOUR_APPLICATION_KEY>
api_host = https://us3.datadoghq.com

apikey = <DATADOG_API_KEY>
appkey = <YOUR_APPLICATION_KEY>
api_host = https://us5.datadoghq.com

apikey = <DATADOG_API_KEY>
appkey = <YOUR_APPLICATION_KEY>
api_host = https://datadoghq.eu

apikey = <DATADOG_API_KEY>
appkey = <YOUR_APPLICATION_KEY>
api_host = https://ddog-gov.com

apikey = <DATADOG_API_KEY>
appkey = <YOUR_APPLICATION_KEY>
api_host = https://ap1.datadoghq.com

これは、プログラム的に多くのサーバーにファイルをプッシュし、どのサーバーからでも dog コマンドを実行できるようにしたい場合に便利です。

Dogshell コマンド

リファレンスは、Dogshell のコードを参照してください。Dogshell をインストールして初期化したら、以下のコマンドに -h オプションを追加すると、それぞれの Dogshell の使用方法を表示できます。

  • dog metric
  • dog event
  • dog status_check
  • dog monitor
  • dog downtime
  • dog timeboard
  • dog screenboard
  • dog dashboard
  • dog host
  • dog tag
  • dog search
  • dog comment

: dogshell コマンドは、デフォルトで Datadog US1 にデータを送信します。他のサイトにデータを送信する必要がある場合は、—api_host オプションを使用するか、.dogrc ファイルに api_host を指定することで実行できます。

実際の Dogshell

以下を使用して、Datadog アカウントにメトリクスをポストできます。

dog metric post <METRIC_NAME> <METRIC_VALUE> --tags "<TAG_KEY_1>:<TAG_VALUE_1>,<TAG_KEY_2>:<TAG_VALUE_2>"

たとえば、次のコマンドは、test_dogshell_metric という名前のメトリクスに値 1.0 とタグ test:one および another_test を指定してアカウントに送信します。

dog metric post test_dogshell_metric 1.0 --tags "test:one,another_test"

Dogshell からメトリクスを送信する方法の詳細を表示するには、次のコマンドを実行します。

dog metric post -h
dogshell_test