概要
Azure DevOps は、組織が製品をより迅速に作成・開発するために使用する機能を提供します。Datadog を Azure DevOps にインテグレーションすることで、次のことが可能になります。
- プルリクエストを追跡し、さまざまなプロジェクトにマージします。
- リリースを監視し、スタックの他のデータとの関連でイベントを作成します。
- 完了したビルドと作業項目の期間を追跡します。
- 作業項目と更新を追跡します。
セットアップ
インストール
Datadog で、Azure DevOps インテグレーションタイルのインストールボタンをクリックします。
構成
サービスフックを使用して、Azure DevOps サービスからのイベントに応じて Datadog でイベントとメトリクスを作成します。
- Azure で、プロジェクトのサービスフックページに移動します。
- Create subscription をクリックします。
- Datadog サービスを選択します。
- トリガーする Visual Studio イベントを構成します。
- Datadog API キーを必須フィールドに入力します。
- Datadog 組織のサイトを追加:
- サービスフックサブスクリプションをテストし、ウィザードを終了します。注: テストは、API キーまたは Datadog オーガニゼーションサイトは検証しません。
- Datadog に送信するイベントタイプごとにステップ 4〜7 を繰り返します。すべてのイベントタイプが受け入れられます。
サービスフックを構成したら、Datadog に移動して、Azure DevOps のイベントとメトリクスを確認します。
Azure 側の他の参照先: Datadog で Azure DevOps Services と TFS のサービスフックを作成する
プログラマティック
Azure ドキュメントに従いプログラムでサービスフックサブスクリプションを作成し、Datadog のエンドポイントを使用します。
https:///intake/webhook/azuredevops?api_key=<DATADOG_API_KEY>
Datadog モニターを Azure Pipelines のゲートとして使用する
Datadog のモニターをゲートとして使用し、Azure Pipelines でのリリースデプロイメントを制御することもできます。このオプションを使用すると、Datadog で異常な状態が検出された場合、問題のあるデプロイを自動的に停止できます。
Datadog Monitors as Deployment Gates 拡張機能を Azure DevOps 組織に追加します。
Azure DevOps で、プロジェクト設定の下の Service Connections に移動し、New Service Connection を選択します。
リストから Datadog を選択し、Next を押します。
指定されたフィールドに、使用するアカウントの Datadog API キーとアプリケーションキーを追加し、名前と説明を入力して、Azure DevOps でこの Datadog アカウントを識別します。Save をクリックします。複数の Datadog アカウントからモニターを照会する必要がある場合は、他のサービス接続を追加できます。
Azure Pipelines に移動して、デプロイを構成します。ステージ間でデプロイ前後の条件を追加するオプションが表示されるので、Datadog モニターを追加する場所を選択し、Gates のトグルスイッチを有効にします。
Add をクリックし、Query Datadog monitors オプションを選択します。
Datadog サービス接続を選択し、使用するモニター ID と重大度しきい値を入力します。重大度しきい値は、タスクが失敗したモニターの状態(Alert
または Warning
)です。
ステップ 5〜7 を繰り返して、デプロイパイプラインの必要に応じてゲートを追加します。
注: 各ステージの単一の健全性状態の一部としてパイプラインのゲートの複数の状況を監視するには、複合条件モニターを使用します。
ソースコードを表示するには、Azure Devops Monitor Gate Extension リポジトリをご覧ください。
収集データ
メトリクス
azure.devops.event.count (counter) | The total number of events. Shown as event |
azure.devops.build.duration (gauge) | The duration of a build. Shown as second |
azure.devops.release.duration (gauge) | The duration of a release. Shown as second |
azure.devops.work_item.duration (gauge) | The lifetime duration of a work item. Shown as hour |
イベント
Azure DevOps インテグレーションは、以下のサービスフックイベントタイプをサポートします。
サービスチェック
Azure DevOps インテグレーションには、サービスのチェック機能は含まれません。
トラブルシューティング
ご不明な点は、Datadog のサポートチームまでお問合せください。
よくあるご質問
このインテグレーションに追加費用はかかりますか?
このインテグレーションで生成されるメトリクスとイベントには、追加費用は発生しません。
データはどのくらいの期間 Datadog で保持されますか?
このインテグレーションからのデータは、Datadog の他のタイプの時系列データと同様に 15 か月間保持されます。
イベントとメトリクスは、どのくらいの時間で Datadog に表示されますか?
合計レイテンシーには多くの変数がありますが、ほとんどの場合、イベントとメトリクスはインシデントが発生してから 30 秒以内に Datadog に表示されます。
Datadog の Azure DevOps イベントとメトリクスで何ができますか?
イベントとメトリクスは、ダッシュボードの構築、モニターのセットアップ、トラブルシューティングなど、Datadog の他のイベントおよびメトリクスと同様に使用できます。
ビルド期間と作業項目期間のメトリクスはどのように生成されますか?
ビルド期間は、ビルドが開始されてから完了するまでの時間差(秒単位)を取得することにより、_ビルド完了_イベントから生成されます。
作業項目期間は、Done
への移行と作業項目が作成されたときの時間差(時間単位)を取得することにより、_作業項目更新_イベントから生成されます。
注: Done
の作業項目が再度開かれた場合は、次回 Done
に移行したときに別のデータポイントが生成されます。初期データポイントは変更されず、新しいデータポイントは、やはり作業項目が最初に作成された時点から測定されます。
サービスフックサブスクリプションのテストで、成功メッセージが返されましたが、イベントが Datadog に到達しないのはなぜですか?
サービスフックサブスクリプションテストは、Azure DevOps が Datadog へイベントを送信できるかどうかのみをチェックします。API キーまたは Datadog オーガニゼーションサイト (US または EU) は検証されません。API キーおよびサイトが正しいことをご確認ください。
その他の参考資料