PagerDuty の Data Infrastructure Insights からの Webhook 通知が HTTP 400 Bad Request で失敗する
環境
- Data Infrastructure Insights(DII)
問題
- Data Infrastructure Insights からの PagerDuty ウェブフック通知が
HTTP 400 Bad Requestで失敗します。 - DII ウェブフックエディタには
Error calling Webhook (status: 400)と表示されます。 - カスタムルーティングキーシークレットが設定されている場合でも、アラートは PagerDuty に配信されません。
原因
- PagerDuty Events API v2 では、
routing_keyJSON フィールドに有効な統合キーが必要です。 - DII ウェブフックメッセージ本文は空の
routing_key値(例:"routing_key": "")を送信するか、設定されたカスタムシークレットを参照していません。 - PagerDuty はペイロードを拒否し、
HTTP 400を返します。
解決策
- PagerDuty で対象のサービスを開き、Events API v2 Integration Keyをコピーします。
- DII で、Admin > Notifications > Webhooks に移動し、PagerDuty Webhook を編集します。
- Custom Parameters and Secrets で、
routingKeyという名前のシークレットを作成または更新し、Integration Key の値を設定します。 - メッセージ本文の JSON で、
routing_keyフィールドのシークレットを参照します:"routing_key": "%%routingKey%%", - Webhook を保存します。
- 実際のモニターアラートをトリガーして配信を検証し、Webhooks リストページのStatus列とLast Reported列を確認します。
パートナーノート
追加情報
- フィールドマッピングと設定のガイダンスについては、PagerDuty の Webhook の例を参照してください。
- 注:DII のTest Webhookボタンはパラメータを置き換えません。
400というテスト結果だけでは、本番環境への配信が失敗していると断定できません。
内部情報
- ケース2010762847に起因します。
- お客様は有効なカスタムシークレットを設定していましたが、メッセージ本文で
%%routingKey%%の代わりに空のrouting_key値が使用されていました。