Webhook およびコネクテッドコンテンツリクエストのトラブルシューティング
この記事では、Webhookとコネクテッドコンテンツの一般的なエラーコードのトラブルシューティング方法について説明し、リクエストでこれらのエラーがどのように発生するかについても詳しく説明します。
4XX エラー {#4xx-errors}
4XX エラーは、エンドポイントに送信されたリクエストに問題があることを示します。これらのエラーは通常、不正な形式のパラメーター、認証ヘッダーの欠落、不正な URL など、誤ったリクエストによって発生します。これらのエラーはレポートビルダーにも適用されることに注意してください。
エラーコードの詳細と解決手順については、次の表を参照してください。
| エラーコード | 意味 | 解決手順 |
|---|---|---|
| 400 Bad Request | リクエストに無効な構文があります。 |
|
| 401 Unauthorized | リクエストにはユーザー認証が必要です。 |
|
| 403 Forbidden | エンドポイントはリクエストを理解しましたが、承認を拒否しています。 |
|
| 404 Not Found | エンドポイントは、リクエストされたリソースを見つけることができません。 |
|
| 405 Method Not Allowed | リクエストメソッドはエンドポイントによって認識されますが、ターゲットリソースによってサポートされていません。 |
|
| 408 Request Timeout | エンドポイントがリクエストの処理中にタイムアウトしました。 |
|
| 409 Conflict | リソースの現在の状態と競合するため、リクエストは不完全です。 |
|
| 429 Too Many Requests | 一定時間内に送信されたリクエストが多すぎます。 |
|
5XX エラー {#5xx-errors}
5XX エラーは、エンドポイントに問題があることを示します。これらのエラーは通常、サーバー側の問題によって発生します。
| エラーコード | 意味 |
|---|---|
| 500 Internal Server Error | エンドポイントで予期しない状態が発生したため、リクエストを完了できませんでした。 |
| 502 Bad Gateway | エンドポイントは、アップストリームサーバーから無効な応答を受信しました。 |
| 503 Service Unavailable | エンドポイントは、一時的な過負荷またはメンテナンスのため、現在リクエストを処理できません。 |
| 504 Gateway Timeout | エンドポイントは、アップストリームサーバーからタイムリーな応答を受け取りませんでした。 |
| 529 Host Overloaded | エンドポイントホストが過負荷になり、応答できませんでした。 |
| 598 Host Unhealthy | エンドポイントホストが一時的に異常とマークされているため、Brazeは応答をシミュレートしました。詳細については、異常ホストの検出を参照してください。 |
| 599 Connection Error | エンドポイントへの接続を確立しようとしたときに、Brazeでネットワーク接続タイムアウトエラーが発生しました。エンドポイントが不安定またはダウンしている可能性があります。 |
5XX エラーの解決
一般的な 5XX エラーのトラブルシューティングのヒントを次に示します。
- メッセージアクティビティログで利用可能な特定の詳細について、エラーメッセージを確認してください。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分待ってから再試行します。
次のエラーコードは、異常ホスト検出器のエラーカウントに寄与します: 408、429、502、503、504、529。
Webhookの場合、Brazeは異常ホスト検出器によって停止されたHTTPリクエストを自動的に再試行します。この自動再試行はエクスポネンシャルバックオフを使用し、失敗する前に数回だけ再試行します。Webhookエラーの詳細については、エラー、再試行ロジック、およびタイムアウトを参照してください。
コネクテッドコンテンツの場合、ターゲットホストへのリクエストが異常ホスト検出器によって停止されると、Brazeはメッセージのレンダリングを続行し、エラー応答コードを受け取ったかのようにLiquidロジックに従います。これらのコネクテッドコンテンツリクエストが異常ホスト検出器によって停止されたときに再試行されるようにするには、:retry オプションを使用します。:retry オプションの詳細については、コネクテッドコンテンツの再試行を参照してください。
異常ホストの検出が問題を引き起こしている可能性があると思われる場合は、Braze サポートまでご連絡ください。
自動メールとメッセージアクティビティログのエントリ
自動メールの設定
24時間の間にワークスペースで100,000を超えるwebhookまたはコネクテッドコンテンツのエンドポイントエラー(再試行を含む)が発生した場合、エラーの解決方法に関する以下の情報を含むメールが送信されます。
- ワークスペースの名前
- CanvasまたはCampaignへのリンク
- エンドポイントURL
- エラーコード
- エラーが最後に観測された時刻
- メッセージアクティビティログおよび関連ドキュメントへのリンク
エンドポイントエラーは次のとおりです。
4XX:400、401、403、404、405、408、409、4295XX:500、502、503、504、598、599
これらのメールは、ワークスペースレベルで1日に1回のみ送信されます。これらのメールに登録するユーザーがいない場合、会社の管理者全員に通知されます。
これらのメールを受信するには、次の手順を実行します。
- 設定 > 管理者設定 > 通知設定に移動します。
- Canvas & Campaignsセクションで、Connected Content ErrorsおよびWebhook Errorsを選択します。
メッセージアクティビティログのエントリ
エラーが発生した場合、それに関連するメッセージアクティビティログに少なくとも1つのエントリがあります。リクエストが再試行されて最終的に成功した場合、その詳細はCurrentsおよびSnowflakeデータ共有で確認できます。リクエストが再試行後に最終的に成功した場合でも、エラーは自動メールをトリガーする可能性があることに注意してください。
Braze Currentsにおけるエラーに関するその他のインサイト
Webhook関連の問題の透明性を高めるために、Brazeは詳細なWebhookエラーイベントをCurrentsおよびSnowflakeデータ共有にストリーミングします。これらのイベントには、失敗したWebhookリクエスト(HTTP 4xx または 5xx レスポンスなど)が含まれ、Webhookの問題がメッセージ配信にどのように影響するかについて、より高い可視性を提供します。エラーイベントには、再試行されるエラーだけでなく、最終的なエラーも含まれます。
コネクテッドコンテンツリクエストは、これらのWebhookエラーイベントには含まれません。
詳細については、メッセージエンゲージメントイベント用語集を参照してください。