Trigger Cloud Pub/Sub

Il trigger Cloud Pub/Sub ti consente di eseguire l'integrazione in base agli eventi nel middleware Pub/Sub.

Utilizzando questo trigger, puoi eseguire un'integrazione ogni volta che un publisher scrive un messaggio nell'argomento che hai scelto. L'argomento può esistere nello stesso progetto Google Cloud dell'integrazione o in un progetto Google Cloud diverso. Quando questo trigger viene eseguito, scrive anche il messaggio pubblicato nella variabile di output CloudPubSubMessage. In base ai tuoi requisiti, puoi utilizzare questa variabile negli attivatori o nelle attività downstream.

Per scoprire come creare un'integrazione di esempio utilizzando Application Integration e il trigger Cloud Pub/Sub, consulta Ascolta l'argomento Cloud Pub/Sub e invia un'email.

Utilizzando questo trigger, puoi eseguire un'integrazione ogni volta che un publisher scrive un messaggio nell'argomento che hai scelto. Quando questo trigger viene eseguito, scrive anche il messaggio pubblicato nella variabile di output CloudPubSubMessage. In base ai tuoi requisiti, puoi utilizzare questa variabile negli attivatori o nelle attività downstream.

Prima di iniziare

Assicurati di eseguire le seguenti attività nel tuo progetto Google Cloud prima di configurare il trigger Cloud Pub/Sub.

  • Assegna il ruolo Project IAM Admin (roles/resourcemanager.projectIamAdmin) all'utente che crea questo trigger.
  • Abilita l'API Pub/Sub per il progetto Google Cloud che contiene l'integrazione.
  • Se l'API Pub/Sub è protetta da un perimetro di servizio, assicurati di definire i seguenti ruoli IAM per gestire questi perimetri di servizio:

    • Access Context Manager Admin (roles/accesscontextmanager.policyAdmin)
    • Access Context Manager Editor (roles/accesscontextmanager.policyEditor)
    • Access Context Manager Reader (roles/accesscontextmanager.policyReader)

  • Verifica di avere un argomento Pub/Sub. Per creare un nuovo argomento Pub/Sub:
    1. Vai alla pagina degli argomenti Pub/Sub nella console Cloud.

      Vai alla pagina degli argomenti Pub/Sub

    2. Fai clic su Crea un argomento.
    3. Nel campo ID argomento, fornisci un nome univoco per l'argomento.
    4. Fai clic su Salva.
Per saperne di più sulla gestione dell'accesso utilizzando i ruoli IAM, consulta Controllo dell'accesso.

Per informazioni sulla concessione dei ruoli alle entità, consulta Concessione, modifica e revoca dell'accesso.

Aggiungi un trigger Cloud Pub/Sub

Per aggiungere un trigger Cloud Pub/Sub a un'integrazione nuova o esistente, segui questi passaggi:
  1. Nella console Google Cloud , vai alla pagina Integrazione di applicazioni.

    Vai ad Application Integration

  2. Nel menu di navigazione, fai clic su Integrazioni.

    Viene visualizzata la pagina Elenco integrazioni, che elenca tutte le integrazioni disponibili nel progetto Google Cloud.

  3. Seleziona un'integrazione esistente o fai clic su Crea integrazione per crearne una nuova.

    Se stai creando una nuova integrazione:

    1. Inserisci un nome e una descrizione nel riquadro Crea integrazione.
    2. Seleziona una regione per l'integrazione.
    3. Seleziona un account di servizio per l'integrazione. Puoi modificare o aggiornare i dettagli del account di servizio di un'integrazione in qualsiasi momento dal riquadro Riepilogo integrazione nella barra degli strumenti dell'integrazione.
    4. Fai clic su Crea.

    L'integrazione appena creata si apre nell'editor integrazioni.

  4. Nella barra di navigazione dell'editor dell'integrazione, fai clic su Attivatori per visualizzare l'elenco degli attivatori disponibili.
  5. Fai clic sull'elemento Trigger Cloud Pub/Sub e posizionalo nel designer.

Configurazione di un trigger Cloud Pub/Sub

Fai clic sull'elemento Trigger Cloud Pub/Sub nell'editor di integrazione per visualizzare il riquadro di configurazione del trigger e poi svolgi le seguenti attività:

  1. Specifica l'argomento che il trigger deve ascoltare nel campo Argomento Pub/Sub nel seguente formato:
    projects/PROJECT_ID/topics/TOPIC_ID

    Per visualizzare tutti gli argomenti disponibili nel tuo progetto, consulta la colonna Nome argomento in Argomenti. Google Cloud Puoi anche selezionare un argomento da un progetto Google Cloud diverso.

    Sostituisci quanto segue:
    • PROJECT_ID: il Google Cloud progetto in cui viene creato l'argomento.
    • TOPIC_ID: l'ID dell'argomento Pub/Sub. L'argomento può trovarsi nello stesso progetto Google Cloud dell'integrazione o in un progetto Google Cloud diverso.
  2. Seleziona il account di servizio che vuoi utilizzare per richiamare l'integrazione. Puoi anche scegliere una variabile di configurazione che hai creato nell'integrazione. Il valore della variabile di configurazione deve essere un indirizzo email del account di servizio con il seguente formato: SERVICE_ACCOUNT_NAME@project-id.iam.gserviceaccount.com. Ad esempio: application-integration-invoke@project123.iam.gserviceaccount.com.

    Per informazioni su come creare una variabile di configurazione, vedi Creare una variabile e su come creare un account di servizio, vedi Creare un service account.

    Se scegli una variabile di configurazione, devi concedere i ruoli richiesti al account di servizio a cui fa riferimento la variabile di configurazione. Per saperne di più su come concedere i ruoli, consulta Ruoli IAM richiesti.

    Se non sono presenti service account, creane uno facendo clic su Crea nuovo nell'elenco Service account.

Per impostazione predefinita, l'opzione del periodo di scadenza per gli abbonamenti è impostata su never expire. Se vuoi impostare la scadenza su un altro valore, nella Google Cloud console, vai alla pagina delle sottoscrizioni Pub/Sub e modifica la sottoscrizione.

Ruoli IAM richiesti per i service account

Se fai clic su Concedi quando selezioni un account di servizio, i seguenti ruoli vengono forniti automaticamente ai vari service account.

Service account Ruolo IAM concesso
Account di servizio predefinito di Application Integration: service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com
  • Editor Pub/Sub (roles/pubsub.editor)
  • Utente Service Account (roles/iam.serviceAccountUser)

Se il progetto Google Cloud dell'argomento Pub/Sub è diverso dal progetto Google Clouddell'integrazione, il account di servizio predefinito deve avere il ruolo Editor Pub/Sub nel progetto Google Cloud dell'argomento.

Service account selezionato per questo trigger Application Integration Invoker (roles/integrations.integrationInvoker)

Output del trigger

Per ogni evento, il trigger Cloud Pub/Sub genera una variabile di output CloudPubSubMessage che puoi utilizzare nelle attività downstream. La variabile è in formato JSON e ha la struttura PubsubMessage.

Crea una sottoscrizione con filtro per l'integrazione

Se vuoi impostare un filtro per l'abbonamento Pub/Sub in modo da elaborare eventi specifici nell'integrazione, segui questi passaggi:

  1. Pubblica l'integrazione con il trigger Cloud Pub/Sub configurato. Questo passaggio crea l'abbonamento nel progetto di integrazione.
  2. Nella console Google Cloud , vai alla pagina Sottoscrizioni.

    Vai agli abbonamenti

  3. Apri l'abbonamento e copia tutti i dettagli, incluso il nome dell'abbonamento.
  4. Elimina l'abbonamento esistente.
  5. Crea un nuovo abbonamento con tutti i dettagli dell'abbonamento eliminato, incluso il nome, che hai copiato nel passaggio 3 e aggiungi un filtro nel nuovo abbonamento.

    L'abbonamento appena creato attiva l'integrazione con i messaggi filtrati.

Esclusioni SLA

Il trigger Cloud Pub/Sub dipende dal prodotto Pub/Sub. Poiché questa dipendenza è esterna ad Application Integration, i termini e le condizioni dell'accordo sul livello del servizio (SLA) di Application Integration sono applicabili solo quando il trigger Cloud Pub/Sub avvia correttamente l'esecuzione di un'integrazione active.

Utilizzare i trigger Pub/Sub con i Controlli di servizio VPC

Quando configuri un trigger Pub/Sub in Application Integration e tenti di pubblicare l'integrazione, la creazione della sottoscrizione Pub/Sub richiesta non riesce se l'API Pub/Sub è protetta da un perimetro di servizio in Controlli di servizio VPC.

I perimetri di servizio applicano limiti di sicurezza intorno alle tue risorse Google Cloud e queste norme possono impedire ad Application Integration di creare l'abbonamento Pub/Sub necessario durante la pubblicazione dell'integrazione.

Per configurare e pubblicare correttamente un trigger Pub/Sub in questi scenari, segui questi passaggi:

  1. Rimuovi temporaneamente l'API Pub/Sub dal perimetro di servizio:
    1. Nella console Google Cloud , vai alla pagina Controlli di servizio VPC.

      Vai a Controlli di servizio VPC

    2. Seleziona il progetto Google Cloud che contiene l'argomento Pub/Sub da utilizzare nell'integrazione.
    3. (Facoltativo) Se non è configurata alcuna policy di accesso per il progetto selezionato, viene visualizzato il messaggio Nessun perimetro di servizio VPC trovato nell'ambito attuale. In questo caso, fai clic su Passa all'ambito dell'organizzazione per passare al livello dell'organizzazione.
    4. Nella pagina Controlli di servizio VPC, fai clic sul nome del perimetro di servizio che vuoi modificare nella tabella.
    5. Nella pagina Dettagli del perimetro di servizio, fai clic su Modifica.
    6. Nel riquadro Servizi limitati, filtra e seleziona il servizio pubsub.googleapis.com.
    7. Fai clic su Rimuovi selezionati.
    8. Fai clic su Salva. Nella finestra di dialogo di conferma, fai clic su Conferma per rimuovere l'API Pub/Sub dal perimetro di servizio dei Controlli di servizio VPC.
  2. Aggiungi e configura il trigger Pub/Sub nell'integrazione.
  3. Pubblica l'integrazione.
  4. Aggiungi di nuovo l'API Pub/Sub al perimetro di servizio:
    1. Vai alla pagina Controlli di servizio VPC.

      Vai a Controlli di servizio VPC

    2. Nella pagina Controlli di servizio VPC, fai clic sullo stesso perimetro di servizio che hai modificato in precedenza nella tabella.
    3. Nella pagina Dettagli del perimetro di servizio, fai clic su Modifica.
    4. Nel riquadro Servizi limitati, fai clic su Aggiungi servizi.
    5. Filtra e seleziona il servizio pubsub.googleapis.com.
    6. Fai clic su Aggiungi servizi selezionati.
    7. Fai clic su Salva. Nella finestra di dialogo di conferma, fai clic su Conferma per aggiungere di nuovo l'API Pub/Sub al perimetro di servizio Controlli di servizio VPC.

Prezzi

Il trigger Cloud Pub/Sub e il trigger Salesforce non richiedono la creazione di un connettore. Tuttavia, se utilizzi l'attività Connettori per connetterti a Pub/Sub o Salesforce, ti viene addebitato l'utilizzo del connettore. Per informazioni sui prezzi, consulta Prezzi di Application Integration.

Considerazioni

  • La dimensione massima di un messaggio Pub/Sub è 10 MB. Per comprendere tutte le limitazioni di Pub/Sub, consulta Quote e limiti di Pub/Sub.
  • È possibile che Pub/Sub scriva lo stesso messaggio più di una volta in un argomento. Per comprendere questo comportamento di Pub/Sub, consulta Distribuzione "at-least-once". Pertanto, devi progettare l'integrazione in modo che sia idempotente e non consenta di scrivere un messaggio più di una volta in un argomento.

    Il campo message_id nell'intestazione del messaggio identifica in modo univoco un messaggio Pub/Sub.

  • Il trigger Cloud Pub/Sub non supporta l'ordinamento dei messaggi. L'ordinamento dei messaggi Pub/Sub è disattivato per la sottoscrizione creata dal trigger Cloud Pub/Sub e non può essere attivato.
  • Se annulli la pubblicazione di un'integrazione, la sottoscrizione Pub/Sub non viene eliminata per evitare la perdita di messaggi. Tuttavia, se elimini la versione pubblicata o tutte le versioni di integrazione di un'integrazione, viene eliminata anche la sottoscrizione Pub/Sub.

Quote e limiti

Per informazioni su quote e limiti, consulta Quote e limiti.

Passaggi successivi