Risolvere i problemi di Eventarc per Cloud Run

Questa pagina mostra come risolvere i problemi che potresti riscontrare quando utilizzi Eventarc per Cloud Run.

Per altri problemi che potresti riscontrare, consulta la risoluzione dei problemi per:

Il servizio Cloud Run non riceve eventi

Se un servizio non riceve eventi, le seguenti soluzioni potrebbero essere utili:

Eventi di Cloud Audit Logs

  • Verifica che l'accesso Lettura amministratore, Lettura dati e Scrittura dati sia abilitato per gli audit log del servizio.

    Vai agli audit log

  • Verifica che sia trascorso un tempo sufficiente dalla creazione del trigger. Potrebbero essere necessari fino a due minuti prima che il trigger sia funzionale.
  • Segui i prerequisiti per la creazione del trigger Eventarc.
  • Verifica che i filtri eventi non siano troppo restrittivi. Per ulteriori informazioni, consulta la sezione Filtri eventi per Cloud Audit Logs.
  • Verifica che il servizio monitorato generi audit log tramite Esplora log.

    Vai a Esplora log

  • Controlla i log di Cloud Run nella pagina Cloud Run:

    Vai a Cloud Run

    Fai clic sul servizio che hai creato in Cloud Run e vai alla scheda Log. Se i log mostrano che il servizio ha ricevuto un codice di stato diverso da OK, il servizio Cloud Run sta rifiutando gli eventi.

Messaggi Pub/Sub

  • Verifica che il trigger Eventarc sia stato creato.
  • Verifica che l'argomento Pub/Sub sia stato creato e collegato al trigger Eventarc.
  • Verifica che l'argomento Pub/Sub esista: vai a Pub/Sub e cerca l'argomento.
  • Verifica che sia trascorso un tempo sufficiente dalla creazione del trigger. Potrebbero essere necessari fino a due minuti prima che il trigger sia funzionale.
  • Controlla i log di Cloud Run nella pagina Cloud Run.

    Vai a Cloud Run

    Fai clic sul servizio che hai creato in Cloud Run e vai alla scheda Log. Se i log mostrano che il servizio ha ricevuto un codice di stato diverso da OK, il servizio Cloud Run sta rifiutando gli eventi.

Il trigger è impostato, ma la destinazione non riceve eventi

  • Verifica che il payload dell'evento che stai inviando non superi i limiti di dimensione dell'evento (512 KB). Anche le sottoscrizioni push Pub/Sub sono soggette a una serie di limiti delle risorse, come la velocità effettiva per regione di pubblicazione. In questo modo, il payload dell'evento Pub/Sub è inferiore a 512 KB.

  • Individua l'argomento Pub/Sub associato al trigger Cloud Run.

    1. Vai a Pub/Sub > Argomenti.

      Vai agli argomenti

    2. Verifica che il nome dell'argomento Pub/Sub includa il nome del trigger creato.

  • Monitora se i messaggi vengono pubblicati nell'argomento con la metrica: topic/send_message_operation_count. Se i messaggi non vengono pubblicati nell'argomento, controlla Cloud Audit Logs e assicurati che il servizio monitorato emetta log. Se i log vengono registrati ma gli eventi non vengono recapitati, contatta l'assistenza.

  • Monitora se i messaggi vengono inviati correttamente con la metrica: subscription/push_request_count per response_code. Se vengono segnalati errori push, controlla i log del servizio Cloud Run. Se l'endpoint di ricezione restituisce un codice di stato diverso da OK, significa che il codice Cloud Run non funziona come previsto e devi contattare l'assistenza.

Impossibile trovare l'argomento Pub/Sub

L'argomento Pub/Sub potrebbe essere stato rimosso o modificato. Quando crei un trigger, viene creato un nuovo argomento Pub/Sub, quindi elimina il trigger esistente e crealo di nuovo.

Messaggio di errore INVALID_ARGUMENT: il servizio non esiste

Se ricevi un messaggio di errore INVALID_ARGUMENT: cloud run service "SERVICE_NAME" in region "REGION_NAME" does not exist, significa che il account di servizio è stato eliminato. Gli eventi non verranno recapitati a Cloud Run se il account di servizio del servizio di destinazione viene eliminato. Crea un nuovo service account Cloud Run.

Costi o traffico imprevisti dovuti a tentativi di recapito degli eventi

Eventarc Standard supporta il recapito degli eventi almeno una volta. Ciò significa che se una destinazione non riconosce un evento, Eventarc tenterà automaticamente di recapitarlo di nuovo. Se noti addebiti imprevisti o se il tuo servizio Cloud Run non è configurato per gestire i tentativi ripetuti di eventi non riusciti, potresti dover modificare la policy di nuovi tentativi del trigger.

Puoi configurare una policy di nuovi tentativi che specifica un singolo tentativo di recapito degli eventi senza nuovi tentativi. In alternativa, puoi personalizzare il comportamento predefinito dei nuovi tentativi. Per ulteriori informazioni, consulta la sezione Riprova gli eventi.

Il servizio Cloud Run non è attivo

Anche se il servizio Cloud Run non è attivo, Pub/Sub conserva gli eventi per sette giorni per impostazione predefinita e tenterà di inviarli di nuovo alla destinazione. Per ulteriori informazioni sui limiti delle risorse Pub/Sub, consulta Quote e limiti.