Skip to content

Webhook およびコネクテッドコンテンツリクエストのトラブルシューティング

この記事では、Webhook とコネクテッドコンテンツの一般的なエラーコードのトラブルシューティング方法について説明し、リクエストでこれらのエラーがどのように発生するかについても詳しく説明します。

4XX エラー

4XX エラーは、エンドポイントに送信されたリクエストに問題があることを示します。これらのエラーは通常、不正な形式のパラメーター、認証ヘッダーの欠落、不正な URL など、誤ったリクエストによって発生します。これらのエラーは Report Builder にも適用されることに注意してください。

エラーコードの詳細と解決手順については、次の表を参照してください。

エラーコード 意味 解決手順
400 Bad Request リクエストに無効な構文があります。
  • リクエストペイロードに構文エラーがないか確認します。
  • すべての必須フィールドが含まれ、正しくフォーマットされていることを確認します。
  • JSON ペイロードを送信する場合は、JSON 構造を検証します。
  • Liquid を使用して Webhook リクエストにパーソナライゼーションタグをテンプレート化している場合は、Liquid が空の値に解決されたり、JSON を壊す文字(エスケープされていない引用符など)を生成したりしないことを確認します。テストユーザーでメッセージをプレビューして、レンダリングされた出力が有効であることを確認してください。
401 Unauthorized リクエストにはユーザー認証が必要です。
  • 正しい認証情報(API キーやトークンなど)がリクエストヘッダーに含まれていることを確認します。
  • エンドポイントにアクセスするためのユーザー権限があることを確認します。
403 Forbidden エンドポイントはリクエストを理解しましたが、承認を拒否しています。
  • API キーまたはトークンに必要な権限があるかどうかを確認します。
  • エンドポイントにアクセスするためのユーザー権限があることを確認します。
404 Not Found エンドポイントは、リクエストされたリソースを見つけることができません。
  • エンドポイント URL にタイプミスや不正なパスがないか確認します。
  • アクセスしようとしているリソースが存在することを確認します。
405 Method Not Allowed リクエストメソッドはエンドポイントによって認識されますが、ターゲットリソースによってサポートされていません。
  • リクエストで使用されている HTTP メソッド(DELETE、GET、POST、PUT)を確認します。
  • エンドポイントが使用しているメソッドをサポートしていることを確認します。
408 Request Timeout エンドポイントがリクエストの処理中にタイムアウトしました。
  • リクエストで使用されている HTTP メソッド(DELETE、GET、POST、PUT)を確認します。
  • エンドポイントが使用しているメソッドをサポートしていることを確認します。
409 Conflict リソースの現在の状態と競合するため、リクエストは不完全です。
  • リクエストで使用されている HTTP メソッド(DELETE、GET、POST、PUT)を確認します。
  • エンドポイントが使用しているメソッドをサポートしていることを確認します。
429 Too Many Requests 一定時間内に送信されたリクエストが多すぎます。
  • キャンペーンまたはキャンバスステップのレート制限を下げます。

5XX エラー

5XX エラーは、エンドポイントに問題があることを示します。これらのエラーは通常、サーバー側の問題によって発生します。

5XX エラーの解決

一般的な 5XX エラーのトラブルシューティングのヒントを次に示します。

  • Message Activity Log で利用可能な特定の詳細について、エラーメッセージを確認してください。Webhook の場合は、Braze ホームページの Performance Over Time セクションに移動し、Webhook の統計を選択します。ここから、エラーが発生した日時を示すタイムスタンプを確認できます。
  • 大量のリクエストを送信してエンドポイントを過負荷にしないようにしてください。バッチで送信するか、レート制限を調整してエラーが減少するかどうかを確認できます。

異常ホストの検出

Braze の Webhook とコネクテッドコンテンツは、異常ホストの検出メカニズムを採用して、タイムアウト、過剰なリクエスト、または Braze がターゲットエンドポイントと正常に通信することを妨げるその他の結果を引き起こす、ターゲットホストの著しい速度低下または過負荷の発生を検出します。これは、ターゲットホストに問題を引き起こす可能性のある不必要な負荷を軽減するための保護手段として機能します。また、Braze のインフラを安定化し、高速なメッセージング速度を維持するのにも役立ちます。

検出しきい値は、Webhook とコネクテッドコンテンツで異なります。

  • Webhook の場合: エラー数が、任意の1分間の移動時間枠で 3,000 を超える場合(ホスト名とアプリグループの一意の組み合わせあたり。エンドポイントパスごとではありません)、Braze はターゲットホストへのリクエストを一時的に1分間停止します。
  • コネクテッドコンテンツの場合: エラー数が 3,000 を超え、かつ、任意の1分間の移動時間枠でエラー率が 90% を超えた場合(ホスト名とアプリグループの一意の組み合わせあたり。エンドポイントパスごとではありません)、Braze はターゲットホストへのリクエストを一時的に1分間停止します。

リクエストが停止されると、Braze は 598 エラーコードで応答をシミュレートし、健全性の低下を示します。1分後、ホストが正常であることが判明した場合、Braze はリクエストをフルスピードで再開します。ホストがまだ異常である場合、Braze はもう1分待ってから再試行します。

次のエラーコードは、異常ホスト検出器のエラーカウントに寄与します: 408429502503504529

Webhook の場合、Braze は異常ホスト検出器によって停止された HTTP リクエストを自動的に再試行します。この自動再試行は指数バックオフを使用し、失敗する前に数回だけ再試行します。Webhook エラーの詳細については、エラー、再試行ロジック、およびタイムアウトを参照してください。

コネクテッドコンテンツの場合、ターゲットホストへのリクエストが異常ホスト検出器によって停止されると、Braze はメッセージのレンダリングを続行し、エラー応答コードを受け取ったかのように Liquid ロジックに従います。これらのコネクテッドコンテンツリクエストが異常ホスト検出器によって停止されたときに再試行されるようにするには、:retry オプションを使用します。:retry オプションの詳細については、コネクテッドコンテンツの再試行を参照してください。

異常ホストの検出が問題を引き起こしている可能性があると思われる場合は、Braze サポートまでご連絡ください。

自動メールとメッセージアクティビティログのエントリ

自動メールの設定

24時間の間にワークスペースで 100,000 を超える Webhook またはコネクテッドコンテンツのエンドポイントエラー(再試行を含む)が発生した場合、エラーの解決方法に関する以下の情報を含むメールが送信されます。

  • ワークスペースの名前
  • キャンバスまたはキャンペーンへのリンク
  • エンドポイント URL
  • エラーコード
  • エラーが最後に観測された時刻
  • メッセージアクティビティログおよび関連ドキュメントへのリンク

エンドポイントエラーは次のとおりです。

  • 4XX: 400, 401, 403, 404, 405, 408, 409, 429
  • 5XX: 500, 502, 503, 504, 598, 599

これらのメールは、ワークスペースレベルで1日に1回のみ送信されます。これらのメールに登録するユーザーがいない場合、会社の管理者全員に通知されます。

これらのメールを受信するには、次の手順を実行します。

  1. [設定] > [管理者設定] > [通知設定] に移動します。
  2. [キャンバス&キャンペーン] セクションで、[Connected Content エラー] および [Webhook エラー] を選択します。

メッセージアクティビティログのエントリ

エラーが発生した場合、それに関連するメッセージアクティビティログに少なくとも1つのエントリがあります。リクエストが再試行されて最終的に成功した場合、その詳細は Currents および Snowflake データ共有で確認できます。リクエストが再試行後に最終的に成功した場合でも、エラーは自動メールをトリガーする可能性があることに注意してください。

Braze Currents におけるエラーに関するその他のインサイト

Webhook 関連の問題の透明性を高めるために、Braze は詳細な Webhook エラーイベントを Currents および Snowflake データ共有にストリーミングします。これらのイベントには、失敗した Webhook リクエスト(HTTP 4xx または 5xx レスポンスなど)が含まれ、Webhook の問題がメッセージ配信にどのように影響するかについて、より高い可視性を提供します。エラーイベントには、再試行されるエラーだけでなく、最終的なエラーも含まれます。

詳細については、メッセージエンゲージメントイベント用語集を参照してください。

New Stuff!