É possível ativar ou desativar a coleta e a publicação de eventos de fontes do Google para um barramento específico do Eventarc Advanced.
Os eventos das origens do Google são acionados diretamente por um evento não mediado, como a criação de uma função do Cloud Run ou uma mudança de status em um job do Dataflow. Para mais informações, consulte Tipos de eventos do Google compatíveis com o Eventarc.
Observe o seguinte:
- Há um limite de um recurso
GoogleApiSource
por projeto do Google Cloud. - Só é possível publicar eventos de origens do Google no mesmo projeto do Google Cloud
que o recurso
GoogleApiSource
. - É possível publicar eventos em um bus que está em um projeto do Google Cloud diferente daquele em que o recurso
GoogleApiSource
existe. É possível configurar isso usando a CLI gcloud ou enviando uma solicitação para a API Eventarc.
Ativar eventos de origens do Google
Para publicar eventos de origens do Google, crie um recurso GoogleApiSource
. Esse recurso representa uma assinatura de eventos da API Google em um projeto específico do Google Cloud para um barramento específico do Eventarc Advanced.
É possível ativar a publicação de eventos de origens do Google das seguintes maneiras:
- No console do Google Cloud
- Usando a CLI do Google Cloud no terminal ou no Cloud Shell
Enviando uma solicitação para a API Eventarc
Console
No console do Google Cloud, acesse a página Eventarc > Bus.
Você pode criar um barramento ou, se estiver atualizando um barramento, clique em Editar.
Na página Editar veículo, para adicionar uma origem de mensagem, clique em
Adicionar origem.- No painel Adicionar origem de mensagem, para o provedor de mensagens da API
do Google, aceite o padrão
google-api-source
ou insira um nome de origem de mensagem diferente. - Clique em Criar.
- No painel Adicionar origem de mensagem, para o provedor de mensagens da API
do Google, aceite o padrão
Clique em Save.
gcloud
Abra um terminal.
É possível ativar eventos de fontes do Google usando o comando
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
Substitua:
GOOGLE_API_SOURCE_NAME
: o ID ou identificador totalmente qualificado do recursoGoogleApiSource
, que representa uma assinatura de eventos da API Google para um barramento específicoBUS_NAME
: o ID ou identificador totalmente qualificado do barramento em que você quer se inscrever para eventos da API GoogleBUS_PROJECT_ID
: o ID do projeto Google Cloud do barramento
Opcional: também é possível usar as seguintes flags:
--async
para retornar do comando imediatamente, sem aguardar a conclusão da operação em andamento.--crypto-key
para especificar o nome totalmente qualificado de uma chave de criptografia gerenciada pelo cliente. Se não for especificado, Google-owned and managed keys será usado.--logging-config
para configurar o nível de registro, que precisa ser um destes:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. Para mais informações, consulteLogSeverity
.
API REST
Para ativar eventos de fontes do Google, use o método
projects.locations.googleApiSources.create
.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
GOOGLE_API_SOURCE_NAME
: o nome de exibição do recursoGoogleApiSource
, que representa uma assinatura de eventos da API do Google para um bus específico, por exemplo,my_google_source
.LABEL_KEY
eLABEL_VALUE
: opcional. Um mapa de pares de chave e valor de rótulos que ajudam a organizar os recursos. Google Cloud Para mais informações, consulte O que são rótulos?ANNOTATION_KEY
eANNOTATION_VALUE
: opcional. Um mapa de pares de chave e valor de anotação de texto em formato livre. É possível usá-las para anexar informações arbitrárias associadas ao recurso. Para mais informações, consulte Anotações.DESTINATION
: o identificador totalmente qualificado do barramento do Eventarc Advanced em que os eventos de origem do Google precisam ser publicados no formatoprojects/PROJECT_NAME/locations/LOCATION/messageBuses/BUS_NAME
. Para mais informações, consulte Criar um bus para encaminhar mensagens.ENCRYPT_KEY
: opcional. Uma chave do Cloud KMS que o recursoGoogleApiSource
precisa usar para criptografia de dados no formatoprojects/PROJECT_NAME/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME
. Para mais informações, consulte Usar chaves de criptografia gerenciadas pelo cliente.PROJECT_ID
: o ID do projeto Google Cloud em que o recursoGoogleApiSource
será criado.LOCATION
: a região com suporte em que o recursoGoogleApiSource
será criado, por exemplo,us-central1
.LOG_SEVERITY
: opcional. A gravidade mínima do evento descrito em uma entrada de registro. Uma destas opções:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. O padrão éNONE
. Para mais informações, consulteLogSeverity
.
Corpo JSON da solicitação:
{ "displayName": "GOOGLE_API_SOURCE_NAME", "labels": {"LABEL_KEY":"LABEL_VALUE"}, "annotations": {"ANNOTATION_KEY":"ANNOTATION_VALUE"}, "destination": "DESTINATION", "cryptoKeyName": "ENCRYPT_KEY", "loggingConfig": {"logSeverity":"LOG_SEVERITY"} }
Para enviar a solicitação, expanda uma destas opções:
Se houver êxito, o corpo da resposta conterá uma instância 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 }
Os eventos das origens do Google no mesmo projeto do Google Cloud que o recurso GoogleApiSource
agora são coletados e publicados no bus.
Desativar eventos de origens do Google
Para desativar a publicação de eventos de origens do Google em um projeto específico do Google Cloud para um barramento do Eventarc Advanced, é necessário excluir o recurso GoogleApiSource
.
É possível desativar a publicação de eventos de origens do Google das seguintes maneiras:
- No console do Google Cloud
- Usando a CLI gcloud no terminal ou no Cloud Shell
Enviando uma solicitação para a API Eventarc
Console
No console do Google Cloud, acesse a página Eventarc > Detalhes do barramento.
Clique em
Editar.Na página Editar bus, para excluir o provedor de mensagens da API Google, clique em
Excluir recurso para a origem de mensagens google-api-source (ou o nome que você deu a ela).No prompt Delete resource, clique em Confirm.
Clique em Salvar.
gcloud
Abra um terminal.
É possível desativar eventos de fontes do Google usando o comando
gcloud beta eventarc google-api-sources delete
:gcloud beta eventarc google-api-source delete GOOGLE_API_SOURCE_NAME \ --location=REGION
Substitua:
GOOGLE_API_SOURCE_NAME
: o ID ou identificador totalmente qualificado do recursoGoogleApiSource
REGION
: o local do recursoGoogleApiSource
.
API REST
Para desativar eventos de fontes do Google, use o método
projects.locations.googleApiSources.delete
.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
PROJECT_ID
: o ID do projeto Google Cloud em que o recursoGoogleApiSource
foi criado.LOCATION
: a região em que o recursoGoogleApiSource
é criado, por exemplo,us-central1
.GOOGLE_API_SOURCE_NAME
: o nome do recursoGoogleApiSource
que você quer excluir.
Para enviar a solicitação, expanda uma destas opções:
Se houver êxito, o corpo da resposta conterá uma instância 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 }
Os eventos das origens do Google no mesmo projeto do Google Cloud que o recurso GoogleApiSource
excluído não são mais coletados e publicados.