Trigger di Cloud Run Functions

Quando esegui il deployment o l'aggiornamento di una funzione creata con l'API Cloud Functions (v2), hai accesso a tutte le funzionalità di configurazione di Cloud Run.

Esistono due modi per attivare le funzioni:

  • Quando crei funzioni con l'API Cloud Functions (v2), specifichi gli attivatori nell'ambito del deployment delle funzioni.

  • Quando crei funzioni con l'API Cloud Run Admin, puoi utilizzare Eventarc, Pub/Sub o altri attivatori HTTP per attivare la funzione.

Utilizza questa pagina per comprendere i diversi tipi di attivatori che puoi configurare per le tue funzioni. Per un elenco completo degli attivatori supportati, consulta la documentazione di Cloud Run.

Tipi di attivatori

Puoi configurare la funzione in modo che venga eseguita in risposta a vari scenari configurando un trigger. Configura gli trigger HTTP per le funzioni HTTP e gli trigger evento per le funzioni CloudEvents.

Trigger HTTP

Gli attivatori HTTP reagiscono alle richieste HTTP(S) e corrispondono alle funzioni HTTP. Per maggiori informazioni sulla scrittura di funzioni HTTP, consulta Scrivere funzioni HTTP.

Quando crei una funzione con l'API Cloud Functions (v2), per impostazione predefinita la funzione ha un URL dell'endpoint HTTP cloudfunctions.net. Se esegui il deployment di questa funzione su Cloud Run, la funzione riceve anche un URL run.app. Tuttavia, le funzioni create in Cloud Run non avranno un URL endpoint HTTP.cloudfunctions.net L'URL cloudfunctions.net e l'URL run.app di una funzione si comportano esattamente allo stesso modo. Sono intercambiabili e vengono utilizzati per attivare la funzione.

Per saperne di più sull'invocazione di una funzione con un trigger HTTP, consulta Eseguire l'invocazione con una richiesta HTTPS.

Trigger evento

Gli attivatori di eventi reagiscono agli eventi all'interno del tuo progetto Google Cloud e corrispondono alle funzioni basate su eventi (note anche come funzioni CloudEvents). Per ulteriori informazioni sulla scrittura di funzioni basate sugli eventi, consulta Scrivere funzioni CloudEvents. Per ulteriori informazioni sull'invocazione della funzione in risposta agli attivatori di eventi, consulta Creare trigger con Eventarc.

Tutte le funzioni basate su eventi utilizzano Eventarc per l'invio di eventi. Gli trigger Pub/Sub e Cloud Storage sono implementati come tipi specifici di trigger Eventarc.

Questa sezione descrive alcuni esempi di attivatori di eventi supportati dalle funzioni Cloud Run.

Trigger Pub/Sub

Puoi attivare la funzione in risposta ai messaggi Pub/Sub utilizzando Eventarc. Quando specifichi un attivatore Pub/Sub per la funzione, specifichi anche un argomento Pub/Sub. In seguito a questo trigger, la funzione viene chiamata ogni volta che pubblichi un messaggio nell'argomento specificato. Per maggiori informazioni, consulta Trigger di Pub/Sub.

Puoi anche utilizzare Cloud Logging per instradare i log a un argomento Pub/Sub, in modo che vengano utilizzati dalle funzioni Cloud Run. Per ulteriori informazioni, consulta Attivare le funzioni dalle voci di log.

Trigger di Cloud Storage

Puoi attivare la funzione da Cloud Storage utilizzando Eventarc in risposta alle modifiche in Cloud Storage. Quando specifichi un trigger Cloud Storage per la tua funzione, scegli un tipo di evento e specifichi un bucket Cloud Storage. In seguito a questo trigger, la funzione viene chiamata ogni volta che si verifica una modifica in un oggetto (file) all'interno del bucket specificato. Per ulteriori informazioni, consulta Trigger Cloud Storage.

Trigger di Firestore

Puoi configurare le funzioni Cloud Run in modo che vengano attivate da eventi in un database Firestore. Quando viene attivata, la funzione legge e aggiorna un database Firestore in risposta a questi eventi tramite le API e le librerie client di Firestore. Per ulteriori informazioni, consulta la sezione Trigger di Firestore.

Altri trigger evento

Le funzioni Cloud Run supportano qualsiasi tipo di evento supportato da Eventarc, incluse oltre 90 origini evento tramite gli audit log di Cloud.

Trigger aggiuntivi tramite Pub/Sub e webhook

Poiché le funzioni Cloud Run possono essere attivate dai messaggi relativi a un argomento Pub/Sub, puoi integrarle con qualsiasi altro servizio Google che supporta Pub/Sub come bus di eventi. Inoltre, utilizzando gli attivatori HTTP, puoi anche eseguire l'integrazione con qualsiasi servizio che fornisca callback HTTP (webhook). Le sezioni seguenti descrivono alcuni esempi di integrazioni.

Cloud Scheduler

Puoi attivare una funzione con un trigger HTTP o un trigger evento.

Per pianificare una funzione Cloud Run HTTP, crea un job Cloud Scheduler che attivi un'azione utilizzando HTTP. Puoi anche pianificare una funzione basata su eventi che viene attivata direttamente in risposta agli eventi all'interno del tuo progetto Google Cloud, ad esempio quando viene pubblicato un messaggio in un argomento Pub/Sub.

Per ulteriori informazioni, consulta Informazioni su Cloud Scheduler.

Cloud Tasks

Le attività di destinazione HTTP di Cloud Tasks ti consentono di eseguire gestori delle attività su qualsiasi endpoint HTTP, pertanto una funzione Cloud Run con un trigger HTTP può essere utilizzata come gestore delle attività. Puoi anche utilizzare le attività per limitare la velocità o la frequenza di chiamata delle funzioni. Per saperne di più, consulta la sezione Creare attività target HTTP nella documentazione di Cloud Tasks.

Gmail

Con l'API Push Notification di Gmail, puoi inviare eventi di Gmail a un argomento Pub/Sub e utilizzarli con le funzioni Cloud Run.