Risolvere i problemi relativi a Eventarc per Workflows

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

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 sezione sulla risoluzione dei problemi relativi a:

Creazione del trigger non riuscita perché il flusso di lavoro target 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 di destinazione. Per risolvere questo problema:

  1. Assicurati che il flusso di lavoro di destinazione 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 posizione 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 inviati:

  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 Pub/Sub o 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: l'ID del trigger o 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 i log vengono registrati ma gli eventi non vengono recapitati, 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 della notifica.
  4. Se gli eventi vengono pubblicati ma non vengono attivate esecuzioni del flusso di lavoro, è probabile che ciò sia dovuto a una chiamata non autenticata. Assicurati che il trigger 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 "Preparati a creare un trigger" quando crei un trigger per un specifico provider, tipo di evento e destinazione di 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 di Eventarc non superi i 512 kB. Per ulteriori informazioni sui limiti delle risorse, consulta Quote e limiti.

    1. Nella console Google Cloud, vai alla pagina Abbonamenti.

      Vai agli abbonamenti

    2. Monitora i messaggi non confermati nella sottoscrizione. Per ulteriori informazioni, consulta la pagina 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 saperne di più 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 ad attivare le 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, un tipo di evento e una destinazione di Workflows specifici.
      • 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 consegnati, contatta l'assistenza.