Uma inscrição identifica uma subscrição de um determinado autocarro. O registo define os critérios de correspondência que determinam que mensagens são encaminhadas para um destino. Também especifica o pipeline através do qual as mensagens correspondentes devem ser encaminhadas. Um pipeline permite-lhe configurar um destino e também oferece a opção de transformar todos os eventos correspondentes antes de os enviar para o destino.
Tenha em conta o seguinte:
- Um pipeline e uma inscrição têm de estar no mesmo Google Cloud projeto. (O autocarro ao qual está subscrito pode estar no mesmo projeto ou num projeto diferente.)
- É possível usar um pipeline para várias inscrições.
- Apenas um destino pode ser o alvo de mensagens encaminhadas por um pipeline.
Antes de começar
Antes de configurar um pipeline ou uma inscrição, já deve ter criado um bus avançado do Eventarc.
Funções necessárias
Uma função de gestão de identidade e de acesso (IAM) contém um conjunto de autorizações que lhe permite realizar ações específicas em Google Cloud recursos. As seguintes funções e autorizações são necessárias quando cria um pipeline e uma inscrição para encaminhar mensagens:
- Para receber a autorização de que precisa para criar um pipeline, peça ao seu administrador para lhe conceder a função de IAM Eventarc Developer (
roles/eventarc.developer
) no projeto do pipeline. Esta função predefinida contém a autorizaçãoeventarc.pipelines.create
, que é necessária para criar um pipeline. - Para receber a autorização de que precisa para criar uma inscrição, peça ao seu administrador que lhe conceda a função de IAM Eventarc Developer (
roles/eventarc.developer
) no seu projeto de inscrição. Esta função predefinida contém a autorizaçãoeventarc.enrollments.create
, que é necessária para criar uma inscrição. - Para receber a autorização de que precisa para usar um autocarro, peça ao seu administrador para lhe conceder a função de IAM Eventarc Message Bus User (
roles/eventarc.messageBusUser
) no seu projeto de autocarro. Esta função predefinida contém a autorizaçãoeventarc.buses.use
, que é necessária para usar um autocarro.
Para mais informações sobre a concessão de funções, consulte o artigo Gerir acesso. Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.
Crie uma inscrição e um pipeline
Pode criar um pipeline e uma inscrição das seguintes formas:
- Na consola Google Cloud
- Usando a Google Cloud CLI no seu terminal ou no Cloud Shell
- Enviando um pedido para a API Eventarc
Consola
Na Google Cloud consola, pode criar o pipeline e a inscrição ao mesmo tempo na página Pipelines.
Para criar uma inscrição, na Google Cloud consola, aceda à página Eventarc > Pipelines.
Clique em
Criar pipeline.No painel Detalhes do pipeline, faça o seguinte:
- Introduza um Nome do pipeline. Este é o ID do seu pipeline.
- Na lista Região, selecione uma região na qual implementar o pipeline. O pipeline tem de ser criado na mesma região que o autocarro. Para mais informações, consulte o artigo Localizações avançadas do Eventarc.
- Opcional: na lista Gravidade do registo, selecione a gravidade mínima para os eventos descritos nas entradas do registo. A predefinição é Nenhum. Para mais
informações, consulte
LogSeverity
. - Opcional: na secção Política de repetição, pode modificar a configuração predefinida para repetir eventos.
- Para Encriptação, aceite a opção predefinida Google-managed encryption key ou selecione Chave do Cloud KMS. Para mais informações, consulte o artigo Use chaves de encriptação geridas pelo cliente (CMEK).
Se selecionar Chave do Cloud KMS, faça o seguinte:
Na lista Tipo de chave, selecione um método para gerir as suas chaves.
Pode gerir as suas chaves manualmente ou usar o Autokey, que lhe permite gerar conjuntos de chaves e chaves a pedido. Se a opção Autokey estiver desativada, significa que ainda não está integrada com o tipo de recurso atual.
Em Selecione uma chave gerida pelo cliente, selecione uma chave.
Tenha em atenção que tem de selecionar uma região antes de poder ver as chaves geridas pelo cliente.
Opcional: para introduzir manualmente o nome do recurso da chave, na lista Selecione uma chave gerida pelo cliente, clique em Introduzir chave manualmente e introduza o nome da chave no formato especificado.
Se lhe for pedido, conceda a função
cloudkms.cryptoKeyEncrypterDecrypter
aoagente do serviço Eventarc.
Opcional: para adicionar etiquetas, clique em O que são etiquetas?
Adicionar etiqueta. As etiquetas são pares de chave-valor que ajudam a organizar os seus Google Cloud recursos. Para mais informações, consulte o artigoClique em Continuar.
No painel Inscrições, faça o seguinte:
- Clique em Adicionar inscrição.
- Introduza um nome de inscrição.
- Na lista Bus, selecione um autocarro para subscrever.
No campo Expressão IEC, escreva uma expressão de avaliação usando o IEC. Por exemplo:
message.type == "google.cloud.dataflow.job.v1beta3.statusChanged"
Tenha em atenção que a expressão predefinida, true, indica que todas as mensagens são encaminhadas sem filtragem.
Clique em Concluído.
Pode adicionar outra inscrição ou clicar em Continuar.
Opcional: no painel Mediação de eventos, faça o seguinte ou clique em Continuar:
- Selecione a caixa de verificação Aplicar uma transformação.
Na lista Formato de entrada, selecione o formato aplicável.
Tenha em atenção que, quando aplica uma transformação, tem de especificar um formato de dados de entrada para um pipeline e que todos os eventos têm de corresponder a esse formato.
Para formatos Avro ou Protobuf, tem de especificar um esquema de entrada. Opcionalmente, pode carregar um esquema de entrada. Para mais informações, consulte o artigo Formate eventos recebidos.
No campo Expressão IEC, escreva uma expressão de transformação usando o IEC.
Clique em Continuar.
No painel Destino, faça o seguinte:
Na lista Tipo de destino, selecione um tipo de destino para encaminhar mensagens. Consoante o tipo de destino, faça o seguinte:
Ponto final de HTTP: especifique o URI de destino. O anfitrião pode ser um endereço IP estático endereçável a partir de uma rede de nuvem privada virtual (VPC) ou o nome do anfitrião do Sistema de Nomes de Domínio (DNS) interno de um serviço resolvível através do Cloud DNS.
Por exemplo, pode segmentar um URL de serviço do Cloud Run que vai receber eventos como pedidos HTTP
POST
. Use o URL estável, atribuído automaticamenterun.app
fornecido na primeira implementação do serviço alojado no Cloud Run. Em alternativa, pode segmentar uma tabela do BigQuery que vai receber eventos como pedidos HTTPPOST
. Defina uma associação de mensagens para criar o pedido HTTP para a API BigQuery.Também pode usar este tipo de destino para especificar um ponto final HTTP para funções do Cloud Run (1.ª geração e versão atual). Quando especifica um acionador HTTP para uma função do Cloud Run, é atribuído um URL à função no qual pode receber pedidos.
Eventarc Advanced bus: selecione um Eventarc Advanced bus. O barramento tem de ser implementado no mesmo projeto e região que o pipeline.
Fluxo de trabalho do Workflows: selecione um fluxo de trabalho do Workflows. Pode acionar a execução de um fluxo de trabalho, que é uma única execução da lógica contida numa definição de fluxo de trabalho. O fluxo de trabalho tem de ser implementado no mesmo projeto que o pipeline.
Tópico do Pub/Sub: selecione ou crie um tópico do Pub/Sub. O tópico tem de ser criado antes de as mensagens poderem ser encaminhadas para o mesmo e tem de estar localizado no mesmo projeto que o pipeline. Se usar um esquema de tópicos, certifique-se de que transforma a mensagem de evento adequadamente.
Serviço do Cloud Run (através de HTTP): selecione um serviço do Cloud Run que vai receber eventos como pedidos HTTP
POST
enviados para o respetivo caminho do URL raiz (/
). Opcionalmente, pode especificar um caminho do URL relativo no serviço de destino para o qual os eventos devem ser enviados.Tarefa do Cloud Run (através de HTTP): selecione uma tarefa do Cloud Run que vai receber eventos como pedidos HTTP
POST
.
Se aplicável, na lista Formato de saída, selecione um formato.
Tenha em atenção que, se não for especificado um formato de dados de entrada para um pipeline, não é possível definir um formato de saída.
Se aplicável, aplique uma associação de mensagens. Para mais informações, consulte o artigo Defina uma associação de mensagens.
Para ativar a autenticação, selecione a caixa de verificação Ativar autenticação.
Na lista Cabeçalho de autorização, selecione o tipo de token a gerar e anexar como um cabeçalho
Authorization
no pedido HTTP:Geralmente, um símbolo do OAuth deve ser usado apenas quando chama APIs Google alojadas em
*.googleapis.com
. Opcionalmente, especifique o Âmbito deste token; caso contrário, a predefinição éhttps://www.googleapis.com/auth/cloud-platform
. Para os Google Cloud serviços, é uma prática recomendada usar o âmbitohttps://www.googleapis.com/auth/cloud-platform
, que inclui todas as Google Cloud APIs, juntamente com a gestão de identidade e de acesso (IAM), que oferece um controlo de acesso detalhado.Tenha em atenção que todos os pedidos a outro Eventarc Advanced, Pub/Sub ou Workflows têm de ter um cabeçalho de autorização HTTP que contenha um token OAuth assinado pela Google para uma das contas de serviço autorizadas.
Um token OIDC pode ser usado em muitos cenários, incluindo pontos finais onde pretende validar o token. Além disso, especifique o público-alvo ao qual este token se destina. Geralmente, deve corresponder ao URL do pipeline de destino. Se não for especificado, é usado o URL completo, incluindo todos os parâmetros de pedido.
Tenha em atenção que o Cloud Run executa uma verificação do IAM em cada pedido e pode usar a autorização
run.routes.invoke
para configurar quem pode aceder ao seu serviço do Cloud Run de qualquer uma das seguintes formas:Conceda a autorização para selecionar contas de serviço ou grupos para permitir o acesso ao serviço. Todos os pedidos têm de ter um cabeçalho de autorização HTTP que contenha um token do OpenID Connect assinado pela Google para uma das contas de serviço autorizadas.
Conceda a autorização a allUsers para permitir o acesso não autenticado.
Para mais informações, consulte o artigo Controlo de acesso para o Cloud Run.
Saiba mais acerca dos tipos de tokens.
Na lista Conta de serviço, selecione a conta de serviço que vai invocar o seu serviço de destino. Em alternativa, pode criar uma nova conta de serviço.
Isto especifica o email da conta de serviço do IAM associado ao pipeline e ao qual concedeu anteriormente funções específicas exigidas pelo Eventarc Advanced.
Clique em Criar.
gcloud
Quando usar a CLI gcloud, crie primeiro o pipeline e, em seguida, crie a inscrição com os comandos adequados.
Fornecimento
Abra um terminal.
Crie um pipeline com o comando
gcloud eventarc pipelines create
:gcloud eventarc pipelines create PIPELINE_NAME \ --destinations=DESTINATION_KEY \ --location=LOCATION
Substitua o seguinte:
PIPELINE_NAME
: o ID do pipeline ou um nome totalmente qualificadoDESTINATION_KEY
: um ou mais pares de chave-valor para configurar um destino para o pipelineTem de definir apenas uma das seguintes chaves:
http_endpoint_uri
—um URI de destino. O anfitrião pode ser um endereço IP estático endereçável a partir de uma rede de nuvem privada virtual (VPC) ou o nome do anfitrião do Sistema de Nomes de Domínio (DNS) interno de um serviço resolvível através do Cloud DNS. Opcionalmente, também pode definirhttp_endpoint_message_binding_template
para especificar uma associação de mensagens.Por exemplo, pode usar esta chave para segmentar um URL do serviço do Cloud Run que vai receber eventos como pedidos HTTP
POST
. Use o URL estável, atribuído automaticamente, fornecido na primeira implementação do serviço alojado no Cloud Run.run.app
Em alternativa, pode segmentar uma tabela do BigQuery ou uma tarefa do Cloud Run. Se necessário, certifique-se de que define uma associação de mensagens para criar o pedido HTTP para a API de destino.Também pode usar este tipo de destino para especificar um ponto final HTTP para funções do Cloud Run (1.ª geração e versão atual). Quando especifica um acionador HTTP para uma função do Cloud Run, é atribuído um URL à função no qual pode receber pedidos.
Para mais informações, consulte os inícios rápidos para os seguintes destinos de eventos: tabela do BigQuery, tarefa do Cloud Run e serviço do Cloud Run.
message_bus
—o ID de um Eventarc Advanced bus. O barramento tem de ser implementado no mesmo projeto e região que o pipeline.pubsub_topic
: o ID de um tópico do Pub/Sub. O tópico tem de ser criado antes de as mensagens poderem ser encaminhadas para o mesmo e, se usar um esquema de tópicos, certifique-se de que transforma a mensagem de evento adequadamente.workflow
—o ID de um fluxo de trabalho do Workflows. Pode acionar a execução de um fluxo de trabalho que é uma única execução da lógica contida numa definição de fluxo de trabalho. O fluxo de trabalho tem de ser implementado no mesmo projeto que o pipeline.
Para ativar a autenticação, pode definir uma das seguintes chaves:
google_oidc_authentication_service_account
—o email da conta de serviço usado para gerar um token OIDC, que pode ser usado em muitos cenários, incluindo pontos finais onde pretende validar o token. Opcionalmente, pode definirgoogle_oidc_authentication_audience
para especificar o público-alvo a que este token se destina. Geralmente, deve corresponder ao URL do pipeline de destino. Se não for especificado, é usado o URL completo, incluindo todos os parâmetros de pedido.Tenha em atenção que o Cloud Run executa uma verificação do IAM em cada pedido e pode usar a autorização
run.routes.invoke
para configurar quem pode aceder ao seu serviço do Cloud Run de qualquer uma das seguintes formas:Conceda a autorização para selecionar contas de serviço ou grupos para permitir o acesso ao serviço. Todos os pedidos têm de ter um cabeçalho de autorização HTTP que contenha um token do OpenID Connect assinado pela Google para uma das contas de serviço autorizadas.
Conceda a autorização a allUsers para permitir o acesso não autenticado.
Para mais informações, consulte o artigo Controlo de acesso para o Cloud Run .
oauth_token_authentication_service_account
—o email da conta de serviço usado para gerar um token OAuth que geralmente só deve ser usado quando chama APIs Google alojadas em*.googleapis.com
. Opcionalmente, pode definiroauth_token_authentication_scope
para especificar o âmbito deste token; caso contrário, a predefinição éhttps://www.googleapis.com/auth/cloud-platform
. Para os Google Cloud serviços, é uma prática recomendada usar o âmbitohttps://www.googleapis.com/auth/cloud-platform
, que inclui todas as Google Cloud APIs, juntamente com a gestão de identidade e de acesso (IAM), que oferece um controlo de acesso detalhado.Tenha em atenção que todos os pedidos a outro Eventarc Advanced, Pub/Sub ou Workflows têm de ter um cabeçalho de autorização HTTP que contenha um token OAuth assinado pela Google para uma das contas de serviço autorizadas.
Saiba mais acerca dos tipos de tokens.
Opcional: pode definir uma das seguintes chaves:
output_payload_format_avro_schema_definition
output_payload_format_json
output_payload_format_protobuf_schema_definition
Tenha em atenção que, se definir um formato de saída, também tem de especificar um formato de entrada (consulte as seguintes flags
input-payload-format-*
).
Opcional: se
http_endpoint_uri
não for usado como chave de destino, pode definir as seguintes chaves:project
—o Google Cloud ID do projeto do recurso de destino; por predefinição, é usado o ID do projeto do pipeline.location
—a localização do recurso de destino; por predefinição, é usada a localização do pipeline.
LOCATION
: a região avançada do Eventarc compatívelEm alternativa, pode definir a propriedade de localização da CLI gcloud:
gcloud config set eventarc/location LOCATION
Opcional: pode usar as seguintes flags:
--async
para regressar imediatamente ao comando, sem esperar que a operação em curso seja concluída.--crypto-key
para especificar o nome totalmente qualificado de uma chave de encriptação gerida pelo cliente; se não for especificado,são usadas as Google-owned and managed keys .--logging-config
para configurar o nível de registo, que tem de ser um dos seguintes:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
.--mediations
para aplicar uma transformação;transformation_template
é o único modelo suportado e apenas é suportada uma mediação por pipeline; por exemplo:--mediations=transformation_template='message.removeFields(["id\ ","credit_card_number","age"])'
Tenha em atenção que, se estiver a aplicar uma transformação, tem de usar um dos seguintes indicadores para especificar um formato de entrada.
Uma das seguintes opções para especificar um formato de entrada:
--input-payload-format-avro-schema-definition
--input-payload-format-json
--input-payload-format-protobuf-schema-definition
--max-retry-attempts
,--max-retry-delay
e--min-retry-delay
para repetir eventos
Por exemplo:
gcloud eventarc pipelines create my-pipeline \ --destinations=http_endpoint_uri='https://example-endpoint.com',oauth_token_authentication_service_account=example-service-account@example-project.gserviceaccount.iam.com,oauth_token_authentication_scope='https://www.googleapis.com/auth/cloud-platform',output_payload_format_avro_schema_definition='{"type": "record","name": "my_record", "fields": [{"name": "my_field", "type":"string"}]}' \ --input-payload-format-avro-schema-definition='{"type":"record", "name": "my_record", "fields": [{"name": "my_field","type": "string"}]}' \ --location=us-central1 \ --async
Para ver mais detalhes e exemplos, consulte a documentação da CLI gcloud.
Inscrição
Abra um terminal.
Crie uma inscrição através do comando
gcloud eventarc enrollments create
:gcloud eventarc enrollments create ENROLLMENT_NAME \ --cel-match=MATCH_EXPRESSION \ --destination-pipeline=PIPELINE_NAME \ --message-bus=BUS_NAME \ --message-bus-project=PROJECT_ID \ --location=LOCATION
Substitua o seguinte:
ENROLLMENT_NAME
: o ID da inscrição ou um nome totalmente qualificadoMATCH_EXPRESSION
: a expressão correspondente para esta inscrição usando o IEC, por exemplo,"message.type == 'google.cloud.dataflow.job.v1beta3.statusChanged'"
PIPELINE_NAME
: o ID do pipeline de destino ou o respetivo nome totalmente qualificado para esta inscriçãoBUS_NAME
: o ID do barramento Eventarc Advanced ou o respetivo nome totalmente qualificadoPROJECT_ID
: o ID do projeto do Google Cloud busLOCATION
: a região avançada do Eventarc compatívelEm alternativa, pode definir a propriedade de localização da CLI gcloud:
gcloud config set eventarc/location LOCATION
Opcional: pode usar a seguinte sinalização:
--async
para regressar imediatamente do comando, sem esperar que a operação em curso seja concluída
Por exemplo:
gcloud eventarc enrollments create my-enrollment \ --cel-match="message.type == 'google.cloud.dataflow.job.v1beta3.statusChanged'" \ --destination-pipeline=my-pipeline \ --message-bus=my-message-bus \ --message-bus-project=another-google-cloud-project \ --location=us-central1 \ --async
API REST
Quando enviar pedidos para a API Eventarc, comece por criar o pipeline e, em seguida, crie a inscrição.
Fornecimento
Para criar um pipeline, use o método
projects.locations.pipelines.create
.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
name
: o nome completo do recurso do pipeline no formatoprojects/PROJECT_ID/locations/LOCATION/pipelines/PIPELINE_NAME
Substitua o seguinte:
PROJECT_ID
: o Google Cloud ID do projeto do projeto de pipelineLOCATION
: a região na qual o pipeline vai ser implementado. Por exemplo,us-central1
PIPELINE_NAME
: o nome do pipeline
LABEL_KEY
eLABEL_VALUE
: opcional. Um mapa de pares de chave e valor de etiquetas que ajudam a organizar os seus Google Cloud recursos. Para mais informações, consulte O que são etiquetas?ANNOTATION_KEY
eANNOTATION_VALUE
: opcional. Um mapa de pares de chave e valor de anotação de texto de forma livre. Pode usá-los para anexar informações arbitrárias associadas ao recurso. Para mais informações, consulte o artigo Anotações.LOG_SEVERITY
: opcional. A gravidade mínima do evento descrito numa entrada do registo. Um dos seguintes:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. A predefinição éNONE
. Para mais informações, consulteLogSeverity
.destinations
: o destino para o qual as mensagens vão ser encaminhadas. Opcionalmente, pode definirmessageBindingTemplate
para especificar uma associação de mensagens. Para mais informações, consulte oDestination
alvo. Só é suportado um destino:httpEndpoint
: um URI de destino (HTTP_URI
). O anfitrião pode ser um endereço IP estático endereçável a partir de uma rede de nuvem privada virtual (VPC), ou o nome de anfitrião do Sistema de Nomes de Domínio (DNS) interno de um serviço resolvível através do Cloud DNS.Por exemplo, pode segmentar um URL de serviço do Cloud Run que vai receber eventos como pedidos HTTP
POST
. Use o URL estável, atribuído automaticamenterun.app
fornecido na primeira implementação do serviço alojado no Cloud Run. Em alternativa, pode segmentar uma tabela do BigQuery ou uma tarefa do Cloud Run. Se necessário, certifique-se de que define uma associação de mensagens para construir o pedido HTTP para a API de destino.Também pode usar este tipo de destino para especificar um ponto final HTTP para funções do Cloud Run (1.ª geração e versão atual). Quando especifica um acionador HTTP para uma função do Cloud Run, é atribuído um URL à função no qual pode receber pedidos.
Para mais informações, consulte os inícios rápidos para os seguintes destinos de eventos: Tabela do BigQuery, Tarefa do Cloud Run, e Serviço do Cloud Run.
messageBus
: um Eventarc Advanced bus. O barramento tem de ser implementado no mesmo projeto e região que o pipeline.topic
: um tópico do Pub/Sub que tem de ser criado primeiro no mesmo projeto que o pipeline. Se usar um esquema de tópicos, certifique-se de que transforma a mensagem de evento adequadamente.workflow
: a Fluxos de trabalho fluxo de trabalho. Pode acionar a execução de um fluxo de trabalho, que é uma única execução da lógica contida numa definição de fluxo de trabalho. O fluxo de trabalho tem de ser implementado no mesmo projeto que o pipeline.
SERVICE_ACCOUNT_EMAIL
: o nome do email da conta de serviço usado para gerar um token OIDC que pode ser usado em muitos cenários, incluindo pontos finais onde pretende validar o token. Opcionalmente, pode definiraudience
para especificar o público-alvo a que este token se destina. Geralmente, deve corresponder ao URL do pipeline de destino. Se não for especificado, é usado o URL completo, incluindo quaisquer parâmetros de pedido.Em alternativa, pode usar
oauthToken
para especificar o email da conta de serviço usado para gerar um símbolo do OAuth que geralmente só deve ser usado quando chama APIs Google alojadas em*.googleapis.com
. Opcionalmente, pode definirscope
para especificar o âmbito deste token. Caso contrário, a predefinição éhttps://www.googleapis.com/auth/cloud-platform
. Para os serviços Google Cloud, é uma prática recomendada usar o âmbitohttps://www.googleapis.com/auth/cloud-platform
, que inclui todas as APIs Google Cloud , juntamente com a gestão de identidade e de acesso (IAM), que oferece um controlo de acesso detalhado.Tenha em atenção que todos os pedidos a outro barramento Eventarc Advanced, Pub/Sub ou Workflows têm de ter um cabeçalho de autorização HTTP com um token OAuth assinado pela Google para uma das contas de serviço autorizadas.
Saiba mais acerca dos tipos de tokens.
Corpo JSON do pedido:
{ "name": "projects/PROJECT_ID/regions/LOCATION/pipelines/PIPELINE_NAME", "labels": {"LABEL_KEY":"LABEL_VALUE"}, "annotations": {"ANNOTATION_KEY":"ANNOTATION_VALUE"}, "loggingConfig": {"logSeverity":"LOG_SEVERITY"}, "destinations": [{"httpEndpoint": {"uri": "HTTP_URI"}, "authenticationConfig": {"googleOidc": {"serviceAccount": "SERVICE_ACCOUNT_EMAIL"}}}] }
Para enviar o seu pedido, expanda uma destas opções:
Se for bem-sucedido, o corpo da resposta contém uma instância recém-criada 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/pipelines/PIPELINE_NAME", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Inscrição
Para criar uma inscrição, use o método
projects.locations.enrollments.create
.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
ENROLLMENT_NAME
: o nome a apresentar da sua inscrição, por exemplo,my_enrollment
.MATCH_EXPRESSION
: a CEL expression identifying which messages this enrollment applies to. Por exemplo,message.type == 'hello-world-type'
.destination
: o nome completo do recurso do pipeline de destino no formatoprojects/PROJECT_ID/locations/LOCATION/pipelines/PIPELINE_NAME
.Substitua o seguinte:
PROJECT_ID
: o Google Cloud ID do projeto do projeto de pipelineLOCATION
: a região na qual o pipeline é implementado, por exemplo,us-central1
.PIPELINE_NAME
: o nome do pipeline
message_bus
: o nome completo do recurso do bus que identifica a origem das mensagens no formatoprojects/BUS_PROJECT_ID/locations/BUS_LOCATION/messageBuses/BUS_NAME
.Substitua o seguinte:
BUS_PROJECT_ID
: o ID do projeto do projeto de autocarros Google CloudBUS_LOCATION
: a região em que o autocarro está implementado, por exemplo,us-central1
BUS_NAME
: o nome do barramento de mensagens
Corpo JSON do pedido:
{ "display_name": "ENROLLMENT_NAME", "cel_match": "MATCH_EXPRESSION", "message_bus": "projects/BUS_PROJECT_ID/locations/BUS_LOCATION/messageBuses/BUS_NAME", "destination": "projects/PROJECT_ID/locations/LOCATION/pipelines/PIPELINE_NAME" }
Para enviar o seu pedido, expanda uma destas opções:
Se for bem-sucedido, o corpo da resposta contém uma instância recém-criada 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/enrollments/ENROLLMENT_NAME", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Listar inscrições
Pode listar as inscrições das seguintes formas:
- Na consola Google Cloud
- Usando a CLI gcloud no seu terminal ou no Cloud Shell
Enviando um pedido para a API Eventarc
Consola
Para listar as inscrições de um pipeline específico, na Google Cloud consola, aceda à página Eventarc > Pipelines.
Clique no nome da conduta para a qual quer listar as inscrições.
É apresentada a página Detalhes do pipeline.
No separador Inscrições, são apresentadas todas as inscrições associadas ao pipeline.
gcloud
Abra um terminal.
Apresente uma lista de inscrições através do comando
gcloud eventarc enrollments list
:gcloud eventarc enrollments list \ --location=LOCATION
Substitua
LOCATION
por uma região avançada do Eventarc suportada.
API REST
Para listar as inscrições, use o método
projects.locations.enrollments.list
.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_ID
: o ID do seu Google Cloud projeto.LOCATION
: a região na qual as inscrições são criadas, por exemplo,us-central1
.
Para enviar o seu pedido, expanda uma destas opções:
Se for bem-sucedido, o corpo da resposta contém instâncias de
Enrollment
e a resposta deve ser semelhante à seguinte:
{ "enrollments": [ { "name": "projects/PROJECT_ID/locations/LOCATION/enrollments/ENROLLMENT_NAME", "uid": "06e396f5-2d4f-43d2-961f-fd2c88403326", "createTime": "2025-03-26T17:57:25.214845320Z", "updateTime": "2025-03-26T17:57:45.136172180Z", "celMatch": "message.type == \"hello-world-type\"", "messageBus": "projects/PROJECT_ID/locations/LOCATION/messageBuses/BUS_NAME", "destination": "projects/PROJECT_ID/locations/LOCATION/pipelines/PIPELINE_NAME" }, {...} ] }
Elimine uma inscrição
Pode eliminar uma inscrição das seguintes formas:
- Na consola Google Cloud
- Usando a CLI gcloud no seu terminal ou no Cloud Shell
Enviando um pedido para a API Eventarc
Consola
Para eliminar uma inscrição, na Google Cloud consola, aceda à página Eventarc > Pipelines.
Clique no nome do pipeline do qual quer eliminar a inscrição.
É apresentado o painel Detalhes do pipeline.
Clique em
Editar.Clique em Continuar.
É aberto o painel Inscrições.
Para a inscrição que quer eliminar, clique no
ícone de eliminação.Clique em Guardar.
gcloud
Abra um terminal.
Elimine uma inscrição através do comando
gcloud eventarc enrollments delete
:gcloud eventarc enrollments delete ENROLLMENT_NAME \ --location=LOCATION
Substitua o seguinte:
ENROLLMENT_NAME
: o ID da inscrição ou um nome totalmente qualificadoLOCATION
: a região avançada do Eventarc suportada da inscrição
API REST
Para eliminar uma inscrição, use o método
projects.locations.enrollments.delete
.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
ENROLLMENT_NAME
: o nome a apresentar da inscrição que quer eliminar, por exemplo,my_enrollment
.PROJECT_ID
: o ID do seu Google Cloud projeto.LOCATION
: a região na qual a inscrição é implementada. Por exemplo,us-central1
.
Para enviar o seu pedido, expanda uma destas opções:
Se for bem-sucedido, o corpo da resposta contém uma instância recém-criada 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/enrollments/ENROLLMENT_NAME", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Listar pipelines
Pode listar pipelines das seguintes formas:
- Na consola Google Cloud
- Usando a CLI gcloud no seu terminal ou no Cloud Shell
Enviando um pedido para a API Eventarc
Consola
Na Google Cloud consola, aceda à página Eventarc > Pipelines.
São apresentados todos os pipelines. Opcionalmente, pode usar o
Filtro para restringir uma pesquisa.gcloud
Abra um terminal.
Apresente uma lista de inscrições através do comando
gcloud eventarc pipelines list
:gcloud eventarc pipelines list \ --location=LOCATION
Substitua
LOCATION
por uma região avançada do Eventarc suportada.
API REST
Para listar pipelines, use o método
projects.locations.pipelines.list
.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_ID
: o ID do seu Google Cloud projeto.LOCATION
: a região na qual os pipelines são criados. Por exemplo,us-central1
.
Para enviar o seu pedido, expanda uma destas opções:
Se for bem-sucedido, o corpo da resposta contém instâncias de
Pipeline
e a resposta deve ser semelhante à seguinte:
{ "pipelines": [ { "name": "projects/PROJECT_ID/locations/LOCATION/pipelines/PIPELINE_NAME", "createTime": "2025-01-10T20:32:11.606516066Z", "updateTime": "2025-03-26T18:02:34.886616683Z", "uid": "7d58dd18-323a-43f6-a456-4f8c20a70218", "destinations": [ { "httpEndpoint": { "uri": "HTTP_URI" }, "authenticationConfig": { "googleOidc": { "serviceAccount": "SERVICE_ACCOUNT_EMAIL" } } } ], "loggingConfig": { "logSeverity": "NONE" }, "retryPolicy": { "maxAttempts": 5, "minRetryDelay": "1s", "maxRetryDelay": "60s" } }, {...} ] }
Elimine um pipeline
Pode eliminar um pipeline das seguintes formas:
- Na consola Google Cloud
- Usando a CLI gcloud no seu terminal ou no Cloud Shell
- Enviando um pedido para a API Eventarc
Tenha em atenção que a eliminação de um pipeline pode demorar mais de 10 minutos.
Consola
Para eliminar um pipeline, na Google Cloud consola, aceda à página Eventarc > Pipelines.
Na lista de pipelines, selecione a caixa de verificação junto ao nome do pipeline que quer eliminar.
Clique em
Eliminar.Confirme a eliminação introduzindo
Delete
.Clique em Eliminar.
gcloud
Abra um terminal.
Elimine um pipeline com o comando
gcloud eventarc pipelines delete
:gcloud eventarc pipelines delete PIPELINE_NAME \ --location=LOCATION
Substitua o seguinte:
PIPELINE_NAME
: o ID do pipeline ou um nome totalmente qualificadoLOCATION
: a região avançada do Eventarc suportada do pipeline
API REST
Para eliminar um pipeline, use o método
projects.locations.pipelines.delete
.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PIPELINE_NAME
: o nome a apresentar do pipeline que quer eliminar, por exemplo,my_pipeline
.PROJECT_ID
: o ID do seu Google Cloud projeto.LOCATION
: a região na qual o pipeline é implementado. Por exemplo,us-central1
.
Para enviar o seu pedido, expanda uma destas opções:
Se for bem-sucedido, o corpo da resposta contém uma instância recém-criada 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/pipelines/PIPELINE_NAME", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }