Trigger Eventarc

Un trigger Eventarc consente di attivare una funzione per qualsiasi tipo di evento supportato da Eventarc. Se specifichi Eventarc trigger per una funzione; tu fornisci i filtri di eventi. Il tuo verrà richiamata ogni volta che si verifica un evento corrispondente ai filtri.

Le funzioni basate su eventi nelle funzioni di Cloud Run utilizzano Trigger Eventarc. Per ulteriori informazioni, vedi Trigger Eventarc nella documentazione di Eventarc. Per un elenco degli eventi supportati di Google, consulta Tipi di eventi supportati da Eventarc.

Affinché una funzione utilizzi un trigger Eventarc, deve essere implementata come funzione CloudEvent. I dati dell'evento vengono passati alla funzione nel Formato CloudEvents, con un payload di dati CloudEvent corrispondenti al tipo di evento. La Google Eventi contiene risorse aggiuntive per lavorare con i dati sugli eventi.

Località trigger

Gli attivatori Eventarc sono collegati a determinate località. In generale, la posizione di un trigger Eventarc deve corrispondere alla posizione della risorsa Google Cloud che vuoi monitorare per gli eventi. Nella maggior parte degli scenari, anche il deployment della funzione Cloud Run nella stessa regione. Per ulteriori dettagli sulle località dei trigger Eventarc, consulta Informazioni sulle località Eventarc.

Identità trigger

Gli attivatori Eventarc sono collegati agli account di servizio da utilizzare come identità al momento dell'invocazione della funzione. Il trigger Eventarc un account di servizio deve avere per richiamare la funzione. Potresti dover verificare che l'account di servizio Compute predefinito abbia le autorizzazioni corrette per richiamare la funzione.

Deployment

Puoi specificare un trigger Eventarc quando esegui il deployment di una funzione. Consulta Eseguire il deployment di una funzione Cloud Run per istruzioni generali su come eseguire il deployment di una funzione. In questa sezione viene descritto come configurare un trigger Eventarc che chiama una funzione quando durante il deployment si verifica un evento corrispondente ai filtri.

gcloud

Se con gcloud CLI, i flag mostrati vengono usati per configurare i trigger Eventarc:

gcloud functions deploy YOUR_FUNCTION_NAME \
  --gen2 \
  --trigger-event-filters="type=EVENTARC_FILTER_TYPE" \
  [--trigger-event-filters=EVENTARC_EVENT_FILTER] \
  [--trigger-event-filters-path-pattern=EVENTARC_EVENT_PATH_PATTERN] \
  [--trigger-location=EVENTARC_TRIGGER_LOCATION] \
  [--trigger-service-account=EVENTARC_TRIGGER_SERVICE_ACCOUNT] \
  [--retry] \
...
  • Il flag --gen2 specifica che stai eseguendo il deployment nelle funzioni Cloud Run. Per utilizzare i trigger Eventarc, devi utilizzare le funzioni Cloud Run.
  • Il flag --trigger-event-filters specifica i filtri eventi che verranno monitorati dall'attivatore. Un evento che corrisponde a tutti i filtri attiverà le chiamate alla funzione.

    • Obbligatorio: ogni attivatore deve avere un tipo di evento supportato nel formato --event-filters="type=EVENTARC_FILTER_TYPE". Questo tipo di evento non può essere modificato dopo la creazione. Per modificare EVENT_FILTER_TYPE, crea un nuovo trigger ed elimina quello vecchio.
    • (Facoltativo) Puoi ripetere il flag --trigger-event-filters con un filtro supportato nel modulo ATTRIBUTE=VALUE per aggiungere altri filtri.
  • La --trigger-event-filters-path-pattern specifica i filtri di eventi che il trigger monitorerà nel percorso formato pattern. Il filtro deve avere il formato ATTRIBUTE=VALUE. Consulta: Comprendi i pattern dei percorsi per saperne di più informazioni.

  • La --trigger-location specifica una posizione per il trigger Eventarc. Consulta: Posizione trigger per ulteriori informazioni. Se non specificata, la regione della funzione viene utilizzata come posizione dell'attivatore.

  • Il flag --trigger-service-account specifica un account di servizio da utilizzare come identità per l'attivatore Eventarc. Consulta Identità trigger per ulteriori informazioni.

  • Il --retry flag controlla se le chiamate alle funzioni non riuscite vengono tentate automaticamente di nuovo. Consulta: Ripetere le funzioni basate su eventi per ulteriori informazioni.

Se stai creando un trigger per un Pub/Sub diretto o per l'evento Cloud Storage, fai riferimento alle istruzioni della gcloud CLI configurare un Pub/Sub e Trigger di Cloud Storage, rispettivamente.

La documentazione di Eventarc contiene esempi di specifica di filtri per eventi per diversi tipi di eventi. Per ulteriori informazioni, segui le istruzioni quando creando un trigger per un provider, un tipo di evento e una destinazione specifici.

Console

Se tramite la console Google Cloud, devi selezionare 2a generazione come ambiente. Poi puoi configurare Trigger Eventarc nella sezione Trigger.

  1. Per aggiungere un trigger evento, fai clic su Aggiungi trigger. Vengono visualizzate le le seguenti opzioni:

    • Trigger di Pub/Sub
    • Trigger di Cloud Storage
    • Trigger di Firestore
    • Altro trigger

    Quando scegli una di queste opzioni, si apre il riquadro Trigger Eventarc, dove puoi specificare i dettagli dell'attivatore.

    Se stai creando un trigger per un Pub/Sub diretto o Evento Cloud Storage, consulta la console Google Cloud istruzioni per configurare Pub/Sub e Cloud Storage trigger rispettivamente.

  2. Se scegli Altro trigger, utilizza il campo Tipo di trigger nel riquadro Trigger Eventarc per specificare una delle opzioni Origini Google, Personalizzato o Di terze parti.

    • Con Origini Google puoi specificare trigger per Pub/Sub, Cloud Storage, Firestore e altri eventi Google di Google Cloud. Nel riquadro Trigger Eventarc, utilizza il campo Provider di eventi per selezionare il prodotto che fornisce il tipo di evento con cui attivare la funzione. Poi, nel campo Evento, seleziona l'evento che vuoi utilizzare come trigger.

    • L'opzione Personalizzato ti consente di produrre e utilizzare eventi dal codice dell'applicazione. Segui le istruzioni nel riquadro Trigger Eventarc per creare un canale. Un canale è una risorsa utilizzata come pipeline per inviare eventi personalizzati dai produttori ai consumatori. Gli eventi personalizzati vengono pubblicati in un canale e un trigger Eventarc si iscrive a questi eventi.

    • L'opzione Di terze parti ti consente di eseguire l'integrazione con provider non Google che offrono un'origine Eventarc. Per maggiori dettagli, consulta Eventi di terze parti in Eventarc.

  3. Nel campo Regione, seleziona una località per l'attivatore Eventarc, se applicabile. Vedi Località trigger per ulteriori informazioni.

  4. Facoltativamente, nel campo Account di servizio, seleziona un account di servizio per come identità del trigger Eventarc. Per ulteriori informazioni, consulta Identità trigger.

  5. Seleziona o deseleziona la casella di controllo Riprova in caso di errore per controllare se le chiamate di funzione non riuscite vengono tentate automaticamente di nuovo. Consulta: Ripetere le funzioni basate su eventi per ulteriori informazioni.

  6. Fai clic su Salva trigger.

Passaggi successivi