Webhook およびコネクテッドコンテンツリクエストのトラブルシューティング
この記事では、Webhook とコネクテッドコンテンツの一般的なエラーコードのトラブルシューティング方法について説明し、リクエストでこれらのエラーがどのように発生するかについても詳しく説明します。
4XX エラー
4XX エラーは、エンドポイントに送信されたリクエストに問題があることを示します。これらのエラーは通常、不正な形式のパラメーター、認証ヘッダーの欠落、不正な URL など、誤ったリクエストによって発生します。これらのエラーは Report Builder にも適用されることに注意してください。
エラーコードの詳細と解決手順については、次の表を参照してください。
| エラーコード | 意味 | 解決手順 |
|---|---|---|
| 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 エラーは、エンドポイントに問題があることを示します。これらのエラーは通常、サーバー側の問題によって発生します。
| エラーコード | 意味 |
|---|---|
| 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 エラーのトラブルシューティングのヒントを次に示します。
- 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分待ってから再試行します。
次のエラーコードは、異常ホスト検出器のエラーカウントに寄与します: 408、429、502、503、504、529。
Webhook の場合、Braze は異常ホスト検出器によって停止された HTTP リクエストを自動的に再試行します。この自動再試行は指数バックオフを使用し、失敗する前に数回だけ再試行します。Webhook エラーの詳細については、エラー、再試行ロジック、およびタイムアウトを参照してください。
コネクテッドコンテンツの場合、ターゲットホストへのリクエストが異常ホスト検出器によって停止されると、Braze はメッセージのレンダリングを続行し、エラー応答コードを受け取ったかのように Liquid ロジックに従います。これらのコネクテッドコンテンツリクエストが異常ホスト検出器によって停止されたときに再試行されるようにするには、:retry オプションを使用します。:retry オプションの詳細については、コネクテッドコンテンツの再試行を参照してください。
異常ホストの検出が問題を引き起こしている可能性があると思われる場合は、Braze サポートまでご連絡ください。
自動メールとメッセージアクティビティログのエントリ
自動メールの設定
24時間の間にワークスペースで 100,000 を超える Webhook またはコネクテッドコンテンツのエンドポイントエラー(再試行を含む)が発生した場合、エラーの解決方法に関する以下の情報を含むメールが送信されます。
- ワークスペースの名前
- キャンバスまたはキャンペーンへのリンク
- エンドポイント URL
- エラーコード
- エラーが最後に観測された時刻
- メッセージアクティビティログおよび関連ドキュメントへのリンク
ワークスペースごとにエラーしきい値を設定できます。このしきい値を調整するには、Braze サポートにお問い合わせください。
エンドポイントエラーは次のとおりです。
4XX:400,401,403,404,405,408,409,4295XX:500,502,503,504,598,599
これらのメールは、ワークスペースレベルで1日に1回のみ送信されます。これらのメールに登録するユーザーがいない場合、会社の管理者全員に通知されます。
これらのメールを受信するには、次の手順を実行します。
- [設定] > [管理者設定] > [通知設定] に移動します。
- [キャンバス&キャンペーン] セクションで、[Connected Content エラー] および [Webhook エラー] を選択します。
メッセージアクティビティログのエントリ
エラーが発生した場合、それに関連するメッセージアクティビティログに少なくとも1つのエントリがあります。リクエストが再試行されて最終的に成功した場合、その詳細は Currents および Snowflake データ共有で確認できます。リクエストが再試行後に最終的に成功した場合でも、エラーは自動メールをトリガーする可能性があることに注意してください。
Braze Currents におけるエラーに関するその他のインサイト
Webhook 関連の問題の透明性を高めるために、Braze は詳細な Webhook エラーイベントを Currents および Snowflake データ共有にストリーミングします。これらのイベントには、失敗した Webhook リクエスト(HTTP 4xx または 5xx レスポンスなど)が含まれ、Webhook の問題がメッセージ配信にどのように影響するかについて、より高い可視性を提供します。エラーイベントには、再試行されるエラーだけでなく、最終的なエラーも含まれます。
コネクテッドコンテンツリクエストは、これらの Webhook エラーイベントには含まれません。
詳細については、メッセージエンゲージメントイベント用語集を参照してください。
GitHub でこのページを編集