Puoi gestire i trigger utilizzando la console Google Cloud o Google Cloud CLI nel terminale o in Cloud Shell. Puoi anche gestire i trigger tramite l'API Eventarc.
Elenca trigger
Puoi elencare, filtrare e ordinare i trigger in tutte le posizioni.
Console
- Nella Google Cloud console, vai alla pagina Trigger di Eventarc. - Elenca tutti i trigger nel tuo progetto per tutte le località e include dettagli come il nome del trigger, la regione, il provider di eventi, la destinazione e il tipo di evento. 
- Per filtrare i trigger in base a una proprietà specifica: - Fai clic sulla casella Filtro.
- Nell'elenco Proprietà, seleziona un'opzione per filtrare i trigger, ad esempio Nome o Canale evento.
 - Puoi selezionare una singola proprietà o utilizzare l'operatore logico - ORper aggiungere altre proprietà in base alle quali filtrare.
- Per ordinare i trigger, fai clic su Ordina accanto all'intestazione della colonna appropriata. - Solo alcune colonne sono ordinabili, ad esempio Nome, Regione o Canale evento. 
gcloud
gcloud eventarc triggers list --location=-
Questo comando elenca il nome, il tipo, la destinazione e lo stato del trigger in tutte le posizioni.
REST
Per elencare i trigger in un determinato progetto e una determinata località, utilizza il
metodo
projects.locations.triggers.list.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto Google Cloud.
- LOCATION: la regione in cui vengono creati i trigger, ad esempio- us-central1.
Per inviare la richiesta, espandi una di queste opzioni:
  In caso di esito positivo, il corpo della risposta contiene istanze di
  Trigger
  e la risposta dovrebbe essere simile alla seguente:
{
  "triggers": [
    {
      "name": "projects/PROJECT_ID/locations/LOCATION/triggers/TRIGGER_NAME",
      "uid": "d700773a-698b-47b2-a712-2ee10b690062",
      "createTime": "2022-12-06T22:44:04.744001514Z",
      "updateTime": "2022-12-06T22:44:09.116459550Z",
      "eventFilters": [
        {
          "attribute": "type",
          "value": "google.cloud.pubsub.topic.v1.messagePublished"
        }
      ],
      "serviceAccount": "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com",
      "destination": {
        "workflow": "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_NAME"
      },
      "transport": {
        "pubsub": {
          "topic": "projects/PROJECT_ID/topics/TOPIC_ID",
          "subscription": "projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID"
        }
      }
    },
    {
      object (Trigger)
    }
  ],
  "nextPageToken": string,
  "unreachable": [
    string
  ]
}
Descrivere un trigger
Puoi descrivere un trigger in una posizione specifica.
Console
- Nella Google Cloud console, vai alla pagina Trigger di Eventarc. 
- Nell'elenco dei trigger, fai clic su quello di cui vuoi conoscere i dettagli. 
La pagina Dettagli trigger mostra i dettagli del trigger, ad esempio nome, regione, fornitore di eventi, tipo di evento, tipo di contenuti dei dati evento e destinazione.
gcloud
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.
Questo comando restituisce informazioni sul trigger simili a quelle seguenti:
  createTime: '2023-03-16T13:40:44.889670204Z'
  destination:
    cloudRun:
      path: /
      region: us-central1
      service: hello
  eventDataContentType: application/protobuf
  eventFilters:
  - attribute: serviceName
    value: cloudscheduler.googleapis.com
  - attribute: methodName
    value: google.cloud.scheduler.v1.CloudScheduler.DeleteJob
  - attribute: type
    value: google.cloud.audit.log.v1.written
  name: projects/project-name/locations/us-central1/triggers/name-of-trigger
  serviceAccount: project-number-compute@developer.gserviceaccount.com
  transport:
    pubsub:
      subscription: projects/project-name/subscriptions/eventarc-us-central1-name-of-trigger-sub-034
      topic: projects/project-name/topics/eventarc-us-central1-name-of-trigger-931
REST
Per descrivere un trigger in un determinato progetto e una determinata posizione, utilizza il
metodo projects.locations.triggers.get.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- TRIGGER_NAME: il nome del trigger che vuoi descrivere.
- PROJECT_ID: il tuo ID progetto Google Cloud.
- LOCATION: la regione in cui viene creato il trigger, ad esempio- us-central1.
Per inviare la richiesta, espandi una di queste opzioni:
  In caso di esito positivo, il corpo della risposta contiene un'istanza di
  Trigger
  simile alla seguente:
{
  "name": "projects/PROJECT_ID/locations/LOCATION/triggers/TRIGGER_NAME",
  "uid": "d700773a-698b-47b2-a712-2ee10b690062",
  "createTime": "2022-12-06T22:44:04.744001514Z",
  "updateTime": "2022-12-06T22:44:09.116459550Z",
  "eventFilters": [
    {
      "attribute": "type",
      "value": "google.cloud.pubsub.topic.v1.messagePublished"
    }
  ],
  "serviceAccount": "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com",
  "destination": {
    "workflow": "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_NAME"
  },
  "transport": {
    "pubsub": {
      "topic": "projects/PROJECT_ID/topics/TOPIC_ID",
      "subscription": "projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID"
    }
  }
}
Se la condizione del trigger indica un problema con l'argomento Pub/Sub, consulta Il trigger non genera eventi.
Aggiorna un trigger
Puoi aggiornare un trigger per le destinazioni Cloud Run, Google Kubernetes Engine (GKE) e Workflows. A seconda della destinazione, è possibile aggiornare campi specifici.
Console
- Nella Google Cloud console, vai alla pagina Trigger di Eventarc. 
- Nell'elenco dei trigger, fai clic su quello di cui vuoi conoscere i dettagli. 
- Nella pagina Dettagli trigger, fai clic su Modifica. 
- Modifica i campi in base alle necessità e fai clic su Salva. - Tieni presente che non puoi aggiornare i campi non disponibili, come Fornitore dell'evento e Destinazione dell'evento. Per ulteriori informazioni sui campi, consulta le istruzioni di Console per un fornitore, un tipo di evento e una destinazione specifici. 
gcloud
Cloud Run
gcloud eventarc triggers update TRIGGER \ --location=LOCATION \ --event-filters=NEW_EVENT_FILTERS \ --service-account=NEW_SERVICE_ACCOUNT \ --destination-run-region=NEW_REGION \ --destination-run-service=NEW_SERVICE \ --destination-run-path=NEW_PATH \ --event-data-content-type="NEW_EVENT_DATA_TYPE"
Sostituisci quanto segue:
- TRIGGER: l'ID del trigger o un identificatore completo.
- LOCATION: la posizione del trigger Eventarc.
Puoi aggiornare uno dei seguenti elementi:
- NEW_EVENT_FILTERS: il filtro utilizzato per configurare il routing degli eventi dell'attivatore; ad esempio,- methodName=storage.objects.createpuò essere aggiornato a- methodName=storage.objects.delete. Tieni presente che, dopo la creazione di un trigger, il filtro eventi- typenon può essere modificato. Per un tipo di evento diverso, devi creare un nuovo trigger.
- NEW_SERVICE_ACCOUNT: l'email del account di servizio Identity and Access Management (IAM) associato al trigger.
- NEW_REGION: la regione in cui si trova il servizio Cloud Run di destinazione.
- NEW_SERVICE: il nome del servizio Cloud Run che riceve gli eventi per il trigger.
- NEW_PATH: il percorso relativo nel servizio Cloud Run di destinazione a cui devono essere inviati gli eventi per il trigger.
- NEW_EVENT_DATA_TYPE: la codifica del payload dell'evento; a seconda del fornitore dell'evento, può essere- application/jsono- application/protobuf.
Ad esempio, per aggiornare il account di servizio per un trigger:
gcloud eventarc triggers update my-cloud-run-trigger \
    --service-account=new-serviceaccount@${PROJECT_ID}.iam.gserviceaccount.com
Questo comando aggiorna il account di servizio di un trigger denominato
my-cloud-run-trigger a
new-serviceaccount@PROJECT_ID.iam.gserviceaccount.com.
GKE
Tieni presente che questa sezione si applica anche agli endpoint pubblici dei servizi privati e pubblici in esecuzione in un cluster GKE.
gcloud eventarc triggers update TRIGGER \ --location=LOCATION \ --destination-gke-namespace=NEW_NAMESPACE \ --destination-gke-service=NEW_SERVICE \ --destination-gke-path=NEW_PATH \ --event-data-content-type="NEW_EVENT_DATA_TYPE"
Sostituisci quanto segue:
- TRIGGER: l'ID del trigger o un identificatore completo.
- LOCATION: la posizione del trigger Eventarc.
Puoi aggiornare uno dei seguenti elementi:
- NEW_NAMESPACE: lo spazio dei nomi in cui è in esecuzione il servizio GKE di destinazione.
- NEW_SERVICE: il nome del servizio GKE che riceve gli eventi per il trigger.
- NEW_PATH: il percorso relativo nel servizio GKE di destinazione a cui devono essere inviati gli eventi per l'attivatore.
- NEW_EVENT_DATA_TYPE: la codifica del payload dell'evento; a seconda del fornitore dell'evento, può essere- application/jsono- application/protobuf.
Ad esempio, per aggiornare il servizio di ricezione di eventi per un trigger:
gcloud eventarc triggers update my-gke-trigger \
    --destination-gke-service=helloworld-events
Questo comando aggiorna il servizio di ricezione eventi per un trigger denominato
my-gke-trigger a un servizio GKE denominato
helloworld-events.
Workflow
gcloud eventarc triggers update TRIGGER \ --location=LOCATION \ --event-filters=NEW_EVENT_FILTERS \ --service-account=NEW_SERVICE_ACCOUNT \ --destination-workflow=NEW_DESTINATION_WORKFLOW \ --destination-workflow-location=NEW_DESTINATION_WORKFLOW_LOCATION \ --event-data-content-type="NEW_EVENT_DATA_TYPE"
Sostituisci quanto segue:
- TRIGGER: l'ID del trigger o un identificatore completo.
- LOCATION: la posizione del trigger Eventarc.
Puoi aggiornare uno dei seguenti elementi:
- NEW_EVENT_FILTERS: il filtro utilizzato per configurare il routing degli eventi dell'attivatore; ad esempio,- methodName=storage.objects.createpuò essere aggiornato a- methodName=storage.objects.delete. Tieni presente che, dopo la creazione di un trigger, il filtro eventi- typenon può essere modificato. Per un tipo di evento diverso, devi creare un nuovo trigger.
- NEW_SERVICE_ACCOUNT: l'email del account di servizio Identity and Access Management (IAM) associato al trigger.
- NEW_DESTINATION_WORKFLOW: l'ID del workflow di cui è stato eseguito il deployment che riceve gli eventi dal trigger.
- NEW_DESTINATION_WORKFLOW_LOCATION: la posizione in cui viene implementato il flusso di lavoro di destinazione.
- NEW_EVENT_DATA_TYPE: la codifica del payload dell'evento; a seconda del fornitore dell'evento, può essere- application/jsono- application/protobuf.
Ad esempio, per aggiornare il account di servizio per un trigger:
gcloud eventarc triggers update my-workflows-trigger \
    --service-account=new-serviceaccount@${PROJECT_ID}.iam.gserviceaccount.com
Questo comando aggiorna il account di servizio di un trigger denominato
my-workflows-trigger a
new-serviceaccount@PROJECT_ID.iam.gserviceaccount.com.
REST
Per aggiornare un trigger esistente, utilizza il
metodo projects.locations.triggers.patch e, facoltativamente, utilizza il parametro di query updateMask per specificare un elenco di campi da aggiornare.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- TRIGGER_NAME: il nome del trigger che vuoi aggiornare.
- PROJECT_ID: il tuo ID progetto Google Cloud.
- LOCATION: la regione in cui viene creato il trigger, ad esempio- us-central1.
- SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com: facoltativo. L'email del account di servizio del servizio Identity and Access Management (IAM) associato al trigger.
- DESTINATION: facoltativo. Specifica il target a cui deve essere inviato l'evento e contiene un'istanza di- Destination. Ad esempio:- {"destination": {"workflow": "projects/my-project/locations/us-central1/workflows/my-first-workflow"}}- o - {"destination": {"cloudRun": {"service": "hello-world", "region": "us-central1"}}}
- EVENT_FILTER: facoltativo. Gli attributi dell'evento in base ai quali filtrare. È supportato solo l'aggiornamento del tipo di metodo per i trigger di Cloud Audit Logs. Ad esempio:- {"eventFilters": [{"attribute": "methodName", "value": "storage.buckets.create"}, {"attribute": "type", "value": "google.cloud.audit.log.v1.written"}, {"attribute": "serviceName", "value": "storage.googleapis.com"}]}- Tieni presente che non puoi aggiornare i tipi di metodo per le destinazioni GKE. 
- CONTENT_TYPE: facoltativo. La codifica del payload dell'evento; a seconda del provider di eventi, può essere- application/jsono- application/protobuf.
- UPDATE_FIELDS: facoltativo. Un elenco separato da virgole dei campi da aggiornare. Se non viene fornito, vengono aggiornati tutti i campi forniti nella richiesta. Ad esempio:- serviceAccount,destination
Corpo JSON della richiesta:
{
  "serviceAccount": "SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com",
  "destination": DESTINATION,
  "eventFilters" EVENT_FILTER,
  "eventDataContentType": "CONTENT_TYPE"
}
Per inviare la richiesta, espandi una di queste opzioni:
  In caso di esito positivo, il corpo della risposta contiene un'istanza appena creata di
  Operation:
{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.eventarc.v1.OperationMetadata",
    "createTime": "2024-01-25T17:17:45.782370139Z",
    "target": "projects/PROJECT_ID/locations/LOCATION/triggers/TRIGGER_NAME",
    "verb": "update",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}
Se il valore di "done" è false, l'operazione
è ancora in corso.
Elimina un trigger
Puoi eliminare un trigger.
Console
- Nella Google Cloud console, vai alla pagina Trigger di Eventarc. 
- Seleziona l'attivatore e fai clic su Elimina. 
gcloud
gcloud eventarc triggers delete TRIGGER
Sostituisci TRIGGER con l'ID del trigger o un identificatore completo.
REST
Per eliminare un trigger con un nome specificato, utilizza il
metodo projects.locations.triggers.delete.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto Google Cloud.
- LOCATION: la regione in cui viene creato il trigger, ad esempio- us-central1.
- TRIGGER_NAME: il nome del trigger da eliminare.
Per inviare la richiesta, espandi una di queste opzioni:
  In caso di esito positivo, il corpo della risposta contiene un'istanza di
  Operation:
{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.eventarc.v1.OperationMetadata",
    "createTime": "2024-01-24T17:53:52.834876290Z",
    "target": "projects/PROJECT_ID/locations/LOCATION/triggers/TRIGGER_NAME",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}
Se il valore di "done" è false, l'operazione
è ancora in corso.