Risolvere i problemi relativi a Eventarc per Workflows

Questa pagina mostra come risolvere i problemi che potresti riscontrare durante l'utilizzo di Eventarc per Workflows.

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

Creazione del trigger non riuscita perché il target del flusso di lavoro non esiste

Ricevi un messaggio di errore simile al seguente:

cloud workflow "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_ID" does not exist
Questo output include i seguenti valori:

  • PROJECT_ID: il tuo ID progetto Google Cloud
  • LOCATION: la località del tuo flusso di lavoro
  • WORKFLOW_ID: il nome del tuo flusso di lavoro

Questo si verifica quando Eventarc non è in grado di trovare il flusso di lavoro target. Per risolvere questo problema:

  1. Assicurati che il flusso di lavoro target esista e sia ATTIVO:

    gcloud workflows list --location -

    L'output dovrebbe essere simile al seguente:

    NAME                                                          STATE   REVISION_ID  UPDATE_TIME
    projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_ID  ACTIVE  000004-c0c   2021-11-19T14:29:27.530185556Z

  2. Assicurati di aver fornito l'ID e la località del flusso di lavoro corretti durante la creazione del trigger.

L'attivatore è stato creato correttamente, ma la destinazione non riceve eventi

Verifica che sia trascorso un periodo di tempo sufficiente dalla creazione del trigger. L'invio degli eventi può richiedere fino a due minuti.

Se l'attivatore continua a non funzionare e gli eventi non vengono pubblicati:

  1. Gli eventi inviati da Pub/Sub alla destinazione potrebbero essere eliminati. Per assicurarti che gli eventi non vengano ignorati, configura un criterio per i nuovi tentativi di sottoscrizione a Pub/Sub oppure inoltra i messaggi non recapitati a un argomento messaggi non recapitabili (noto anche come coda di messaggi non recapitabili).

    Prima di impostare l'argomento messaggi non recapitabili, recupera l'argomento e la sottoscrizione del trigger:

    gcloud eventarc triggers describe TRIGGER \
    --location=LOCATION

    Sostituisci quanto segue:

    • TRIGGER: ID dell'attivatore o di un identificatore completo.
    • LOCATION: la posizione del trigger Eventarc.
  2. Utilizza la console Google Cloud per monitorare se i messaggi vengono pubblicati nell'argomento Pub/Sub con la metrica: topic/send_message_operation_count.

  3. Se i messaggi non vengono pubblicati nell'argomento Pub/Sub, verifica che l'origine stia generando eventi:

    • Per gli eventi di Cloud Audit Logs, controlla i log e assicurati che il servizio monitorato scriva i log. Se vengono registrati log, ma gli eventi non vengono consegnati, contatta l'assistenza.
    • Per gli eventi di Cloud Storage, controlla le notifiche per il tuo bucket:

      gsutil notification list gs://BUCKET_NAME
      Sostituisci BUCKET_NAME con il nome del bucket.
      L'output dovrebbe essere simile al seguente:

      projects/_/buckets/BUCKET_NAME/notificationConfigs/NOTIFICATION_CONFIG_ID
      Cloud Pub/Sub topic: projects/PROJECT_ID/topics/TOPIC_ID
      Filters:
        Event Types: OBJECT_ARCHIVE

      Questo output include i seguenti valori:

      • TOPIC_ID: l'ID dell'argomento Pub/Sub esistente.
      • NOTIFICATION_CONFIG_ID: l'ID della configurazione delle notifiche.
  4. Se gli eventi vengono pubblicati ma non vengono attivate esecuzioni del flusso di lavoro, la causa è probabilmente una chiamata non autenticata. Assicurati che l'attivatore sia associato a un account di servizio autorizzato a creare esecuzioni del flusso di lavoro. Per ulteriori informazioni, segui le istruzioni per creare un account di servizio gestito dall'utente nella sezione "Preparazione alla creazione di un trigger" durante la creazione di un trigger per un provider specifico, un tipo di evento e una destinazione Workflows.

  5. Se i messaggi vengono pubblicati in un argomento Pub/Sub, ma non vengono attivate esecuzioni del flusso di lavoro, assicurati che il payload evento Eventarc non sia superiore a 512 kB. Per ulteriori informazioni sui limiti delle risorse, consulta Quote e limiti.

    1. In Cloud Console, vai alla pagina Abbonamenti.

      Vai agli abbonamenti

    2. Monitora i messaggi non confermati nella sottoscrizione. Per ulteriori informazioni, consulta Monitorare i messaggi non recapitabili inoltrati.

    3. Se sono presenti messaggi non confermati, monitora i log del flusso di lavoro per il metodo TriggerPubsubExecution. Per ulteriori informazioni sulla visualizzazione dei log del flusso di lavoro, vedi Visualizzare i log del flusso di lavoro.

      • Utilizza il filtro Permission 'workflows.executions.create' denied per verificare se il trigger è associato a un account di servizio autorizzato a eseguire esecuzioni del flusso di lavoro. Per ulteriori informazioni su come concedere i ruoli appropriati all'account di servizio, segui le istruzioni nella sezione "Preparati a creare un trigger" quando crei un trigger per un provider specifico, un tipo di evento e una destinazione Workflows.
      • Usa la parola chiave event size exceeded per verificare se le dimensioni dell'evento superano i 512 kB.
    4. Se i log vengono registrati, ma gli eventi non vengono recapitati, contatta l'assistenza.