Trigger Pub/Sub

In Cloud Functions, un trigger Pub/Sub consente di chiamare una funzione in risposta ai messaggi Pub/Sub. Quando specifichi un trigger Pub/Sub per una funzione, specifichi anche un argomento Pub/Sub. La funzione verrà chiamata ogni volta che un messaggio viene pubblicato nell'argomento specificato.

Affinché una funzione possa utilizzare un trigger Pub/Sub, deve essere implementata come funzione basata su eventi:

Il repository Eventi Google contiene risorse aggiuntive per lavorare con i dati sugli eventi.

Deployment

Puoi specificare un trigger Pub/Sub quando esegui il deployment di una funzione. Consulta Eseguire il deployment di una funzione Cloud Functions per istruzioni generali su come eseguire il deployment di una funzione e consulta questa sezione per ulteriori informazioni specifiche sulla configurazione dei trigger Pub/Sub durante il deployment.

gcloud

Se esegui il deployment con gcloud CLI, i flag mostrati qui vengono utilizzati per configurare i trigger Pub/Sub:

gcloud functions deploy YOUR_FUNCTION_NAME \
--trigger-topic=YOUR_PUBSUB_TOPIC \
[--retry] \
...
  • Il flag --trigger-topic specifica l'argomento Pub/Sub che verrà monitorato dal trigger. I messaggi pubblicati in questo argomento attivano le chiamate alla funzione.
  • Il flag --retry controlla se le chiamate di funzione non riuscite vengono tentate automaticamente di nuovo. Per ulteriori informazioni, consulta Riprovare le funzioni basate su eventi.

Eventi Pub/Sub legacy

Le funzioni legacy in Cloud Functions (1ª generazione) utilizzano un tipo di evento diverso per i trigger Pub/Sub:

gcloud functions deploy YOUR_FUNCTION_NAME \
--trigger-event=providers/cloud.pubsub/eventTypes/topic.publish \
--trigger-resource=YOUR_PUBSUB_TOPIC \
...

Questo tipo di evento è supportato per le funzioni legacy che utilizzano già questi eventi. Tuttavia, ti consigliamo di utilizzare il flag --trigger-topic, poiché il tipo di evento precedente potrebbe essere rimosso in futuro.

Console

Se stai eseguendo il deployment utilizzando la console Google Cloud, puoi configurare un trigger Pub/Sub nella sezione Trigger.

  • Per Cloud Functions (2nd gen):

    1. Nel campo Tipo di trigger, scegli Cloud Pub/Sub.
    2. Nel campo Argomento Cloud Pub/Sub, seleziona un argomento per il trigger da monitorare. I messaggi pubblicati in questo argomento attivano le chiamate alla funzione.
    3. Seleziona o deseleziona la casella di controllo Riprova in caso di errore per controllare se Cloud Functions ritenta automaticamente una chiamata di funzione non riuscita. Per ulteriori informazioni, consulta Riprovare le funzioni basate su eventi.
    4. Fai clic su Altre opzioni per eseguire una configurazione aggiuntiva sull'attivatore:

      • Nel campo Tipo di attivatore, specifica una delle seguenti opzioni: Origini Google, Personalizzato o Terze parti:

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

        • L'opzione Personalizzato 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 fornire 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 consente l'integrazione con provider non Google che offrono un'origine Eventarc. Per i dettagli, consulta Eventi di terze parti in Eventarc.

      • Nel campo Evento, seleziona un evento di attivazione. Il valore predefinito è google.cloud.pubsub.topic.v1.messagePublished.

      • Facoltativamente, nel campo Account di servizio, seleziona un account di servizio da utilizzare come identità del trigger Eventarc. Per ulteriori informazioni, consulta Identità attivatore.

    5. Fai clic su Salva attivatore.

  • Per Cloud Functions (1ª generazione.):

    1. Nel campo Tipo di trigger, seleziona Cloud Pub/Sub.
    2. Nel campo Seleziona un argomento Cloud Pub/Sub, seleziona un argomento per il trigger da monitorare oppure seleziona Crea un argomento per aprire una finestra in cui creare un nuovo argomento. Quando un messaggio viene pubblicato nell'argomento della funzione, viene attivata una chiamata alla funzione.
    3. Seleziona o deseleziona la casella di controllo Riprova in caso di errore per stabilire se ripetere automaticamente le chiamate di funzione non riuscite. Per ulteriori informazioni, consulta Riprovare le funzioni basate su eventi.

Passaggi successivi