Vous pouvez gérer les déclencheurs à l'aide de la console Google Cloud ou de Google Cloud CLI dans votre terminal ou Cloud Shell. Vous pouvez également gérer les déclencheurs via l'API Eventarc.
Répertorier les déclencheurs
Vous pouvez répertorier, filtrer et trier les déclencheurs dans tous les emplacements.
Console
Dans la console Google Cloud, accédez à la page Déclencheurs d'Eventarc.
Accéder à la page "Déclencheurs"
Vous y trouverez la liste de tous les déclencheurs de votre projet pour tous les emplacements et inclut des informations telles que le nom du déclencheur, la région, le fournisseur d'événements, la destination et le type d'événement.
Pour filtrer vos déclencheurs selon une propriété spécifique, procédez comme suit :
- Cliquez sur la case Filtre .
- Dans la liste des Propriétés, sélectionnez une option pour filtrer les déclencheurs par exemple, Nom ou Canal d'événement.
Vous pouvez sélectionner une seule propriété ou utiliser l'opérateur logique
OR
pour ajouter d'autres propriétés à filtrer.Pour trier vos déclencheurs, cliquez sur
Trier à côté de l'en-tête de colonne approprié.Seules certaines colonnes peuvent être triées, par exemple Nom, Région ou Canal d'événement.
gcloud
gcloud eventarc triggers list --location=-
Cette commande répertorie le nom, le type, la destination et l'état du déclencheur dans tous les emplacements.
REST
Pour répertorier les déclencheurs dans un projet et un emplacement donnés, utilisez la méthode projects.locations.triggers.list
.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
PROJECT_ID
: ID de votre projet Google Cloud.LOCATION
: région dans laquelle les déclencheurs sont créés (par exemple,us-central1
).
Pour envoyer votre requête, développez l'une des options suivantes :
Si la requête aboutit, le corps de la réponse contient des instances de Trigger
et la réponse doit ressembler à ce qui suit :
{ "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 ] }
Décrire un déclencheur
Vous pouvez décrire un déclencheur dans un emplacement spécifique.
Console
Dans la console Google Cloud, accédez à la page Déclencheurs d'Eventarc.
Dans la liste des déclencheurs, cliquez sur le déclencheur dont vous souhaitez connaître les détails.
La page Détails du déclencheur affiche les détails du déclencheur, tels que le nom, la région, le fournisseur, le type et le type de contenu de données de l'événement, et la destination.
gcloud
gcloud eventarc triggers describe TRIGGER \ --location=LOCATION
Remplacez les éléments suivants :
TRIGGER
: l'ID du déclencheur ou un identifiant complet.LOCATION
: l'emplacement du déclencheur Eventarc.
Cette commande renvoie des informations sur le déclencheur, semblables à ce qui suit :
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
Pour décrire un déclencheur dans un projet et un emplacement donnés, utilisez la méthode projects.locations.triggers.get
.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
TRIGGER_NAME
: nom du déclencheur que vous souhaitez décrire.PROJECT_ID
: ID de votre projet Google Cloud.LOCATION
: région dans laquelle le déclencheur est créé, par exempleus-central1
.
Pour envoyer votre requête, développez l'une des options suivantes :
Si la requête aboutit, le corps de la réponse contient une instance de Trigger
semblable à celle-ci :
{ "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" } } }
Si la condition du déclencheur indique un problème avec le sujet Pub/Sub, consultez la section Le déclencheur ne diffuse pas d'événements.
Mettre à jour un déclencheur
Vous pouvez mettre à jour un déclencheur pour Cloud Run, Google Kubernetes Engine (GKE) et les destinations de workflows. Selon la destination, des champs spécifiques peuvent être mis à jour.
Console
Dans la console Google Cloud, accédez à la page Déclencheurs d'Eventarc.
Dans la liste des déclencheurs, cliquez sur le déclencheur dont vous souhaitez connaître les détails.
Sur la page Détails du déclencheur, cliquez sur
Modifier.Modifiez les champs selon vos besoins, puis cliquez sur Enregistrer.
Notez que vous ne pouvez pas mettre à jour les champs indisponibles, tels que le fournisseur d'événements et la destination de l'événement. Pour en savoir plus sur les champs, consultez les instructions de la console pour un fournisseur, un type d'événement et une destination spécifiques.
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"
Remplacez les éléments suivants :
TRIGGER
: l'ID du déclencheur ou un identifiant complet.LOCATION
: l'emplacement du déclencheur Eventarc.
Vous pouvez mettre à jour les informations suivantes :
NEW_EVENT_FILTERS
: filtre utilisé pour configurer le routage d'événements du déclencheur. Par exemple,methodName=storage.objects.create
peut être remplacé parmethodName=storage.objects.delete
. Notez qu'une fois le déclencheur créé, le filtre d'événementtype
ne peut plus être modifié. Pour un type d'événement différent, vous devez créer un déclencheur.NEW_SERVICE_ACCOUNT
: adresse e-mail du compte de service IAM (Identity and Access Management) associé au déclencheur.NEW_REGION
: région dans laquelle se trouve le service Cloud Run de destination.NEW_SERVICE
: nom du service Cloud Run qui reçoit les événements pour le déclencheur.NEW_PATH
: chemin d'accès relatif du service Cloud Run de destination auquel les événements du déclencheur doivent être envoyés.NEW_EVENT_DATA_TYPE
: encodage de la charge utile de l'événement. Selon le fournisseur de l'événement, il peut s'agir deapplication/json
ou deapplication/protobuf
.
Par exemple, pour mettre à jour le compte de service d'un déclencheur, procédez comme suit :
gcloud eventarc triggers update my-cloud-run-trigger \
--service-account=new-serviceaccount@${PROJECT_ID}.iam.gserviceaccount.com
Cette commande met à jour le compte de service d'un déclencheur nommé my-cloud-run-trigger
vers new-serviceaccount@PROJECT_ID.iam.gserviceaccount.com
.
GKE
Notez que cette section s'applique également aux points de terminaison publics des services privés et publics s'exécutant dans 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"
Remplacez les éléments suivants :
TRIGGER
: l'ID du déclencheur ou un identifiant complet.LOCATION
: l'emplacement du déclencheur Eventarc.
Vous pouvez mettre à jour les informations suivantes :
NEW_NAMESPACE
: espace de noms dans lequel le service GKE de destination est exécuté.NEW_SERVICE
: nom du service GKE qui reçoit les événements du déclencheur.NEW_PATH
: chemin d'accès relatif du service GKE de destination auquel les événements du déclencheur doivent être envoyés.NEW_EVENT_DATA_TYPE
: encodage de la charge utile de l'événement. Selon le fournisseur de l'événement, il peut s'agir deapplication/json
ou deapplication/protobuf
.
Par exemple, pour mettre à jour le service récepteur d'événements pour un déclencheur :
gcloud eventarc triggers update my-gke-trigger \
--destination-gke-service=helloworld-events
Cette commande met à jour le service récepteur d'événements pour un déclencheur nommé my-gke-trigger
vers un service GKE nommé helloworld-events
.
Workflows
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"
Remplacez les éléments suivants :
TRIGGER
: l'ID du déclencheur ou un identifiant complet.LOCATION
: l'emplacement du déclencheur Eventarc.
Vous pouvez mettre à jour les informations suivantes :
NEW_EVENT_FILTERS
: filtre utilisé pour configurer le routage d'événements du déclencheur. Par exemple,methodName=storage.objects.create
peut être remplacé parmethodName=storage.objects.delete
. Notez qu'une fois le déclencheur créé, le filtre d'événementtype
ne peut plus être modifié. Pour un type d'événement différent, vous devez créer un déclencheur.NEW_SERVICE_ACCOUNT
: adresse e-mail du compte de service IAM (Identity and Access Management) associé au déclencheur.NEW_DESTINATION_WORKFLOW
: ID du workflow déployé qui reçoit les événements du déclencheur.NEW_DESTINATION_WORKFLOW_LOCATION
: emplacement dans lequel le workflow de destination est déployé.NEW_EVENT_DATA_TYPE
: encodage de la charge utile de l'événement. Selon le fournisseur de l'événement, il peut s'agir deapplication/json
ou deapplication/protobuf
.
Par exemple, pour mettre à jour le compte de service d'un déclencheur, procédez comme suit :
gcloud eventarc triggers update my-workflows-trigger \
--service-account=new-serviceaccount@${PROJECT_ID}.iam.gserviceaccount.com
Cette commande met à jour le compte de service d'un déclencheur nommé my-workflows-trigger
vers new-serviceaccount@PROJECT_ID.iam.gserviceaccount.com
.
REST
Pour mettre à jour un déclencheur existant, utilisez la méthode projects.locations.triggers.patch et utilisez éventuellement le paramètre de requête updateMask
pour spécifier une liste de champs à mises à jour.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
TRIGGER_NAME
: nom du déclencheur que vous souhaitez mettre à jour.PROJECT_ID
: ID de votre projet Google Cloud.LOCATION
: région dans laquelle le déclencheur est créé, par exempleus-central1
.SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com
: Facultatif. Adresse e-mail du compte de service IAM (Identity and Access Management) associé au déclencheur.DESTINATION
: Facultatif. Spécifie la cible à laquelle l'événement doit être envoyé et contient une instance deDestination
. Exemple :{"destination": {"workflow": "projects/my-project/locations/us-central1/workflows/my-first-workflow"}}
ou
{"destination": {"cloudRun": {"service": "hello-world", "region": "us-central1"}}}
EVENT_FILTER
: Facultatif. Attributs d'événement à filtrer. Seule la mise à jour du type de méthode des déclencheurs Cloud Audit Logs est acceptée. Exemple :{"eventFilters": [{"attribute": "methodName", "value": "storage.buckets.create"}, {"attribute": "type", "value": "google.cloud.audit.log.v1.written"}, {"attribute": "serviceName", "value": "storage.googleapis.com"}]}
Notez que vous ne pouvez pas mettre à jour les types de méthodes pour les destinations GKE.
CONTENT_TYPE
: Facultatif. Encodage de la charge utile de l'événement. Selon le fournisseur de l'événement, il peut s'agir deapplication/json
ou deapplication/protobuf
.UPDATE_FIELDS
: Facultatif. Liste de champs à mettre à jour, séparés par une virgule. Si cette valeur n'est pas spécifiée, tous les champs fournis dans la requête sont mis à jour. Par exemple :serviceAccount,destination
Corps JSON de la requête :
{ "serviceAccount": "SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com", "destination": DESTINATION, "eventFilters" EVENT_FILTER, "eventDataContentType": "CONTENT_TYPE" }
Pour envoyer votre requête, développez l'une des options suivantes :
Si la requête aboutit, le corps de la réponse contient une nouvelle instance de 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 }
Si la valeur de "done"
est définie sur false
, l'opération est toujours en cours.
Supprimer un déclencheur
Vous pouvez supprimer un déclencheur.
Console
Dans la console Google Cloud, accédez à la page Déclencheurs d'Eventarc.
Sélectionnez le déclencheur et cliquez sur
Supprimer.
gcloud
gcloud eventarc triggers delete TRIGGER
Remplacez TRIGGER
par l'ID du déclencheur ou un identifiant complet.
REST
Pour supprimer un déclencheur portant un nom spécifique, utilisez la méthode projects.locations.triggers.delete
.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
PROJECT_ID
: ID de votre projet Google Cloud.LOCATION
: région dans laquelle le déclencheur est créé, par exempleus-central1
.TRIGGER_NAME
: nom du déclencheur que vous souhaitez supprimer.
Pour envoyer votre requête, développez l'une des options suivantes :
Si la requête aboutit, le corps de la réponse contient une instance de 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 }
Si la valeur de "done"
est définie sur false
, l'opération est toujours en cours.