Dogwrap コマンドラインツールを使用すると、コマンドを呼び出して、その結果からイベントを生成できます。Dogwrap を使用するには、Datadog Python ライブラリをインストールします。
pip からインストールする場合
ソースからインストールする場合
- DataDog/datadogpy リポジトリを複製します。
- ルートフォルダーで
python setup.py install を実行します。
有効な最小限の dogwrap コマンドは、以下のレイアウトを持ちます。
dogwrap -n <EVENT_TITLE> -k <DATADOG_API_KEY> "<COMMAND>"
dogwrap -n <EVENT_TITLE> -k <DATADOG_API_KEY> -s us3 "<COMMAND>"
dogwrap -n <EVENT_TITLE> -k <DATADOG_API_KEY> -s us5 "<COMMAND>"
dogwrap -n <EVENT_TITLE> -k <DATADOG_API_KEY> -s eu "<COMMAND>"
注: dogwrap コマンドは、デフォルトでデータを米国の Datadog サイトに送信します。別のサイトにデータを送信する必要がある場合は、-s オプションを使用し、eu、us3、us5 などの送信先サイトを指定する必要があります。
次のプレースホルダーと組み合わせます。
<EVENT_TITLE>: Datadog に表示するイベントのタイトル。<DATADOG_API_KEY>: オーガニゼーションに関連付けられた Datadog API キー。<COMMAND>: ラップしてイベントを生成するコマンド。呼び出されるコマンドは引用符で囲みます。これは、Python がこのコマンドラインの引数を、ラップされたコマンドの引数ではなく Python コマンドの引数と見なさないようにするためです。
注: Dogwrap のヘルプコマンド dogwrap --help を使用すると、使用可能なすべてのオプションが表示されます。
実際の dogwrap の例として、cron を考えます。次のように、Postgres テーブルを毎日バキュームする cron スクリプトがあるとします。
0 0 * * * psql -c 'vacuum verbose my_table' >> /var/log/postgres_vacuums.log 2>&1
バキュームは特にリソースを集中的に使用します。そこで、バキュームを実行するたびに、メトリクスやイベントをバキュームに関連付ける Datadog イベントを生成できます。
dogwrap -n "Vacuuming mytable" -k $DATADOG_API_KEY --submit_mode errors "psql -c 'vacuum verbose my_table' 2>&1 /var/log/postgres_vacuums.log"
これは、スクリプトの最後にあるコマンドを呼び出し、コマンドが 0 以外の終了コード (エラーなど) で終了すると、Datadog イベントを送信します。--submit_mode all を使用すると、このコマンドを実行するたびに、イベントが送信されます。