Vous pouvez activer ou désactiver la collecte et la publication d'événements provenant de sources Google pour un bus Eventarc Advanced spécifique.
Les événements provenant de sources Google sont déclenchés directement par un événement non médiatisé, tel que la création d'une fonction Cloud Run ou un changement d'état d'une tâche Dataflow. Pour en savoir plus, consultez la section Types d'événements Google compatibles avec Eventarc.
Veuillez noter les points suivants :
- Une limite d'une seule ressource
GoogleApiSource
par projet Google Cloud s'applique. - Vous ne pouvez publier des événements à partir de sources Google que dans le même projet Google Cloud que la ressource
GoogleApiSource
. - Vous pouvez publier des événements sur un bus qui se trouve dans un projet Google Cloud différent de celui dans lequel se trouve la ressource
GoogleApiSource
. Vous pouvez le configurer à l'aide de la CLI gcloud ou en envoyant une requête à l'API Eventarc.
Activer les événements provenant de sources Google
Pour publier des événements à partir de sources Google, vous devez créer une ressource GoogleApiSource
. Cette ressource représente un abonnement aux événements de l'API Google dans un projet Google Cloud spécifique pour un bus Eventarc Advanced spécifique.
Vous pouvez activer la publication d'événements provenant de sources Google de différentes manières:
- Google Cloud Console
- à l'aide de la Google Cloud CLI dans votre terminal ou Cloud Shell ;
En envoyant une requête à l'API Eventarc
Console
Dans la console Google Cloud, accédez à la page Eventarc > Bus.
Vous pouvez créer un bus ou, si vous en modifiez un, cliquez sur Modifier.
Sur la page Modifier le bus, pour ajouter une source de messages, cliquez sur
> Ajouter une source.- Dans le volet Ajouter une source de messages, pour le fournisseur de messages de l'API Google, acceptez la valeur par défaut
google-api-source
ou saisissez un autre nom de source de messages. - Cliquez sur Créer.
- Dans le volet Ajouter une source de messages, pour le fournisseur de messages de l'API Google, acceptez la valeur par défaut
Cliquez sur Enregistrer.
gcloud
Ouvrez un terminal.
Vous pouvez activer les événements provenant de sources Google à l'aide de la commande
gcloud beta eventarc google-api-sources create
:gcloud beta eventarc google-api-source create GOOGLE_API_SOURCE_NAME \ --destination-message-bus=BUS_NAME \ --destination-message-bus-project=BUS_PROJECT_ID
Remplacez les éléments suivants :
GOOGLE_API_SOURCE_NAME
: ID ou identifiant complet de votre ressourceGoogleApiSource
, qui représente un abonnement aux événements de l'API Google pour un bus particulierBUS_NAME
: ID ou identifiant complet du bus pour lequel vous souhaitez vous abonner aux événements de l'API GoogleBUS_PROJECT_ID
: Google Cloud ID du projet pour le bus
Facultatif: Vous pouvez également utiliser les options suivantes:
--async
pour quitter immédiatement la commande, sans attendre la fin de l'opération en cours.--crypto-key
pour spécifier le nom complet d'une clé de chiffrement gérée par le client. Si elle n'est pas spécifiée, Google-owned and managed keys est utilisé.--logging-config
pour configurer le niveau de journalisation, qui doit correspondre à l'un des éléments suivants:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. Pour en savoir plus, consultezLogSeverity
.
API REST
Pour activer les événements provenant de sources Google, utilisez la méthode projects.locations.googleApiSources.create
.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
GOOGLE_API_SOURCE_NAME
: nom à afficher de la ressourceGoogleApiSource
, qui représente un abonnement aux événements de l'API Google pour un bus particulier (par exemple,my_google_source
).LABEL_KEY
etLABEL_VALUE
: facultatifs. Mappage des paires clé-valeur des libellés qui vous aident à organiser vos Google Cloud ressources. Pour en savoir plus, consultez la section Que sont les libellés ?ANNOTATION_KEY
etANNOTATION_VALUE
: facultatifs. Mappage des paires clé-valeur d'annotations de texte libre. Vous pouvez les utiliser pour associer des informations arbitraires à la ressource. Pour en savoir plus, consultez la section Annotations.DESTINATION
: identifiant complet du bus Eventarc Advanced auquel les événements sources Google doivent être publiés au formatprojects/PROJECT_NAME/locations/LOCATION/messageBuses/BUS_NAME
. Pour en savoir plus, consultez la section Créer un bus pour acheminer les messages.ENCRYPT_KEY
: Facultatif. Clé Cloud KMS que la ressourceGoogleApiSource
doit utiliser pour le chiffrement des données au formatprojects/PROJECT_NAME/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME
. Pour en savoir plus, consultez la page Utiliser des clés de chiffrement gérées par le client.PROJECT_ID
: ID du projet Google Clouddans lequel créer la ressourceGoogleApiSource
.LOCATION
: région compatible dans laquelle créer la ressourceGoogleApiSource
(par exemple,us-central1
).LOG_SEVERITY
: Facultatif. Gravité minimale de l'événement décrit dans une entrée de journal. Au choix:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
ouEMERGENCY
. La valeur par défaut estNONE
. Pour en savoir plus, consultezLogSeverity
.
Corps JSON de la requête :
{ "displayName": "GOOGLE_API_SOURCE_NAME", "labels": {"LABEL_KEY":"LABEL_VALUE"}, "annotations": {"ANNOTATION_KEY":"ANNOTATION_VALUE"}, "destination": "DESTINATION", "cryptoKeyName": "ENCRYPT_KEY", "loggingConfig": {"logSeverity":"LOG_SEVERITY"} }
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/googleApiSources/GOOGLE_API_SOURCE_NAME", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Les événements provenant de sources Google dans le même projet Google Cloud que la ressource GoogleApiSource
sont désormais collectés et publiés sur le bus.
Désactiver les événements provenant de sources Google
Pour désactiver la publication d'événements à partir de sources Google dans un projet Google Cloud spécifique vers un bus Eventarc Advanced, vous devez supprimer la ressource GoogleApiSource
.
Vous pouvez désactiver la publication d'événements provenant de sources Google de différentes manières:
- Google Cloud Console
- À l'aide de la CLI gcloud dans votre terminal ou Cloud Shell
En envoyant une requête à l'API Eventarc
Console
Dans la console Google Cloud, accédez à la page Eventarc > Détails du bus.
Cliquez sur
Modifier.Sur la page Modifier le bus, pour supprimer le fournisseur de messages de l'API Google, cliquez sur
Supprimer la ressource pour la source de messages google-api-source (ou le nom que vous lui avez attribué).Dans l'invite Supprimer la ressource, cliquez sur Confirmer.
Cliquez sur Enregistrer.
gcloud
Ouvrez un terminal.
Vous pouvez désactiver les événements provenant de sources Google à l'aide de la commande
gcloud beta eventarc google-api-sources delete
:gcloud beta eventarc google-api-source delete GOOGLE_API_SOURCE_NAME \ --location=REGION
Remplacez les éléments suivants :
GOOGLE_API_SOURCE_NAME
: ID ou identifiant complet de la ressourceGoogleApiSource
REGION
: emplacement de la ressourceGoogleApiSource
API REST
Pour désactiver les événements provenant de sources Google, utilisez la méthode projects.locations.googleApiSources.delete
.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
PROJECT_ID
: ID du Google Cloud projet dans lequel la ressourceGoogleApiSource
est créée.LOCATION
: région dans laquelle la ressourceGoogleApiSource
est créée (par exemple,us-central1
).GOOGLE_API_SOURCE_NAME
: nom de la ressourceGoogleApiSource
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 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/googleApiSources/GOOGLE_API_SOURCE_NAME", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Les événements provenant de sources Google dans le même projet Google Cloud que la ressource GoogleApiSource
supprimée ne sont plus collectés ni publiés.