Eventarc for Cloud Run のトラブルシューティング

このページでは、Eventarc for Cloud Run の使用中に発生する可能性のある問題の解決方法について説明します。

他に発生する可能性のある問題については、以下のトラブルシューティングをご覧ください。

Cloud Run サービスがイベントを受信しない

サービスがイベントを受信していない場合は、次の解決策が役立つことがあります。

Cloud Audit Logs イベント

  • サービスの監査ログに対して管理読み取りデータ読み取りデータ書き込み権限が有効になっていることを確認してください。

    [監査ログ] に移動

  • トリガーを作成してから十分な時間が経過していることを確認します。トリガーが機能するまでに 2 分ほどかかることがあります。
  • Eventarc トリガーを作成するための前提条件を満たします。
  • イベント フィルタが過度に制限されていないことを確認します。詳細については、Cloud Audit Logs のイベント フィルタをご覧ください。
  • ログ エクスプローラで、モニタリング対象サービスが監査ログを生成していることを確認します。

    [ログ エクスプローラ] に移動

  • [Cloud Run] ページで Cloud Run のログを確認します。

    [Cloud Run] に移動

    Cloud Run で作成したサービスをクリックして、[ログ] タブに移動します。ログに、サービスが OK 以外のステータス コードを受け取ったことが記録されている場合、Cloud Run サービスはイベントを拒否しています。

Pub/Sub メッセージ

  • Eventarc トリガーが作成されたことを確認します。
  • Pub/Sub トピックが作成され、Eventarc トリガーに接続されていることを確認します。
  • Pub/Sub トピックが存在することを確認します。Pub/Sub に移動し、トピックを検索します。
  • トリガーを作成してから十分な時間が経過していることを確認します。トリガーが機能するまでに 2 分ほどかかることがあります。
  • [Cloud Run] ページで Cloud Run のログを確認します。

    [Cloud Run] に移動

    Cloud Run で作成したサービスをクリックして、[ログ] タブに移動します。ログに、サービスが OK 以外のコードを受け取ったことが記録されている場合、Cloud Run サービスはイベントを拒否しています。

トリガーが設定されているが、ターゲットでイベントが受信されていない

  • 送信するイベント ペイロードがイベントサイズの上限(512 KB)を超えていないことを確認します。Pub/Sub の push サブスクリプションには、公開リージョンあたりのスループットなどの一連のリソース上限も適用されます。このため、Pub/Sub イベントのペイロードは 512 KB 未満にする必要があります。

  • Cloud Run トリガーに関連付けられている Pub/Sub トピックを見つけます。

    1. [Pub/Sub] > [トピック] に移動します。

      [トピック] に移動

    2. Pub/Sub トピック名に、作成されたトリガーの名前が含まれていることを確認します。

  • 指標 topic/send_message_operation_count を含むトピックにメッセージが公開されているかどうかをモニタリングします。トピックにメッセージが公開されていない場合は、Cloud Audit Logs で、モニタリング対象サービスがログを出力していることを確認します。ログが記録されていてもイベントが配信されない場合は、サポートにお問い合わせください。

  • response_code で、指標 subscription/push_request_count を含むメッセージが正常に push されているかどうかをモニタリングします。push エラーが報告された場合は、Cloud Run サービスログを確認します。受信エンドポイントが OK 以外のステータス コードを返した場合は、Cloud Run コードが期待どおりに機能していません。この場合、サポートにお問い合わせいただく必要があります。

Pub/Sub トピックがない

Pub/Sub トピックが削除または変更された可能性があります。トリガーを作成すると、新しい Pub/Sub トピックが作成されるため、既存のトリガーを削除して再度作成してください。

「INVALID_ARGUMENT service does not exist」エラー メッセージ

INVALID_ARGUMENT: cloud run service "SERVICE_NAME" in region "REGION_NAME" does not exist」というエラー メッセージが表示された場合は、サービス アカウントが削除されています。ターゲット サービスのサービス アカウントが削除された場合、Cloud Run にイベントは配信されません。新しい Cloud Run サービス アカウントを作成します。

Cloud Run サービスが停止している

Cloud Run サービスが停止している場合でも、Pub/Sub はデフォルトでイベントを 7 日間保持し、ターゲットへのイベント送信を再試行します。Pub/Sub リソースの上限の詳細については、割り当てと上限をご覧ください。