GSP773

Visão geral
Neste laboratório, você vai aprender a usar eventos do Cloud Run para gerenciar
a comunicação entre produtores e consumidores. Os produtores (ou seja,
fontes de eventos) fornecem os dados de origem. Os dados produzidos são enviados para um
consumidor (ou seja, coletores de eventos) que usa as informações transmitidas. O diagrama abaixo
apresenta uma visão geral de alto nível dessa abordagem no Google Cloud:

O mecanismo de entrega unificador entre produtores e consumidores é o Eventarc
para Cloud Run. No exemplo acima, o Cloud Pub/Sub facilita a entrega de eventos
para os eventos gerados no projeto.
Ao final deste laboratório, você poderá entregar eventos de várias fontes
a coletores do Google Cloud e coletores personalizados.
Você vai saber:
- Eventarc para Cloud Run
- Criar um coletor do Cloud Run
- Criar um gatilho de evento para o Cloud Pub/Sub
- Criar um gatilho de evento para registros de auditoria
Pré-requisitos
Com base no conteúdo, é recomendável ter alguma familiaridade com:
- Cloud Run
- Cloud Pub/Sub
- Logging
Recomendamos executar este laboratório em uma janela de navegação anônima.
Configuração e requisitos
Antes de clicar no botão Começar o Laboratório
Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é ativado quando você clica em Iniciar laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.
Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, e não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.
Confira os requisitos para concluir o laboratório:
- Acesso a um navegador de Internet padrão (recomendamos o Chrome).
Observação: para executar este laboratório, use o modo de navegação anônima (recomendado) ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e de estudante, o que poderia causar cobranças extras na sua conta pessoal.
- Tempo para concluir o laboratório: não se esqueça que, depois de começar, não será possível pausar o laboratório.
Observação: use apenas a conta de estudante neste laboratório. Se usar outra conta do Google Cloud, você poderá receber cobranças nela.
Como iniciar seu laboratório e fazer login no console do Google Cloud
-
Clique no botão Começar o laboratório. Se for preciso pagar por ele, uma caixa de diálogo vai aparecer para você selecionar a forma de pagamento.
No painel Detalhes do Laboratório, à esquerda, você vai encontrar o seguinte:
- O botão Abrir Console do Google Cloud
- O tempo restante
- As credenciais temporárias que você vai usar neste laboratório
- Outras informações, se forem necessárias
-
Se você estiver usando o navegador Chrome, clique em Abrir console do Google Cloud ou clique com o botão direito do mouse e selecione Abrir link em uma janela anônima.
O laboratório ativa os recursos e depois abre a página Fazer Login em outra guia.
Dica: coloque as guias em janelas separadas lado a lado.
Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta.
-
Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.
{{{user_0.username | "Username"}}}
Você também encontra o nome de usuário no painel Detalhes do Laboratório.
-
Clique em Próxima.
-
Copie a Senha abaixo e cole na caixa de diálogo de Olá.
{{{user_0.password | "Password"}}}
Você também encontra a senha no painel Detalhes do Laboratório.
-
Clique em Próxima.
Importante: você precisa usar as credenciais fornecidas no laboratório, e não as da sua conta do Google Cloud.
Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais.
-
Acesse as próximas páginas:
- Aceite os Termos e Condições.
- Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
- Não se inscreva em testes gratuitos.
Depois de alguns instantes, o console do Google Cloud será aberto nesta guia.
Observação: para acessar os produtos e serviços do Google Cloud, clique no Menu de navegação ou digite o nome do serviço ou produto no campo Pesquisar.
Ativar o Cloud Shell
O Cloud Shell é uma máquina virtual com várias ferramentas de desenvolvimento. Ele tem um diretório principal permanente de 5 GB e é executado no Google Cloud. O Cloud Shell oferece acesso de linha de comando aos recursos do Google Cloud.
-
Clique em Ativar o Cloud Shell
na parte de cima do console do Google Cloud.
-
Clique nas seguintes janelas:
- Continue na janela de informações do Cloud Shell.
- Autorize o Cloud Shell a usar suas credenciais para fazer chamadas de APIs do Google Cloud.
Depois de se conectar, você verá que sua conta já está autenticada e que o projeto está configurado com seu Project_ID, . A saída contém uma linha que declara o projeto PROJECT_ID para esta sessão:
Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}
A gcloud é a ferramenta de linha de comando do Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.
- (Opcional) É possível listar o nome da conta ativa usando este comando:
gcloud auth list
- Clique em Autorizar.
Saída:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
To set the active account, run:
$ gcloud config set account `ACCOUNT`
- (Opcional) É possível listar o ID do projeto usando este comando:
gcloud config list project
Saída:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Observação: consulte a documentação completa da gcloud no Google Cloud no guia de visão geral da gcloud CLI.
Tarefa 1: Configurar o ambiente
- Defina o projeto:
gcloud config set project {{{project_0.project_id | "PROJECT_ID"}}}
- Defina a região do Cloud Run como uma região compatível:
gcloud config set run/region {{{project_0.default_region | "REGION"}}}
- Defina o padrão da plataforma do Cloud Run como
managed:
gcloud config set run/platform managed
- Defina o local padrão do Eventarc para Cloud Run:
gcloud config set eventarc/location {{{project_0.default_region | "REGION"}}}
Tarefa 2: Ativar conta de serviço
Em seguida, configure algumas contas de serviço necessárias para o gatilho de registro de auditoria.
- Armazene o número do projeto em uma variável de ambiente:
export PROJECT_NUMBER="$(gcloud projects list \
--filter=$(gcloud config get-value project) \
--format='value(PROJECT_NUMBER)')"
- Conceda o papel
eventarc.admin à conta de serviço padrão do Compute Engine:
gcloud projects add-iam-policy-binding $(gcloud config get-value project) \
--member=serviceAccount:${PROJECT_NUMBER}-compute@developer.gserviceaccount.com \
--role='roles/eventarc.admin'
Clique em Verificar meu progresso para conferir se você executou a tarefa.
Ativar a conta de serviço.
Tarefa 3: Descoberta de eventos
As origens registradas e os tipos de eventos podem ser descobertos usando a linha de comando.
- Para ver a lista de diferentes tipos de eventos, execute o seguinte:
gcloud eventarc providers list
Saída:
NAME: datamigration.googleapis.com
LOCATION: us-central1
NAME: apigeeregistry.googleapis.com
LOCATION: us-central1
NAME: networkconnectivity.googleapis.com
LOCATION: us-central1
NAME: dataplex.googleapis.com
LOCATION: us-central1
NAME: datafusion.googleapis.com
LOCATION: us-central1
NAME: pubsub.googleapis.com
LOCATION: us-central1
- Para mais informações sobre cada evento, execute:
gcloud eventarc providers describe \
pubsub.googleapis.com
Saída:
displayName: Cloud Pub/Sub
eventTypes:
- description: A message is published to the specified Pub/Sub topic.
filteringAttributes:
- attribute: type
required: true
type: google.cloud.pubsub.topic.v1.messagePublished
name: projects/{{{project_0.project_id | "PROJECT_ID"}}}/locations/{{{project_0.default_region | "REGION"}}}/providers/pubsub.googleapis.com
Tarefa 4: Criar um coletor do Cloud Run
- Configure uma variável de ambiente para o serviço:
export SERVICE_NAME=event-display
- Configure uma variável de ambiente para a imagem:
export IMAGE_NAME="gcr.io/cloudrun/hello"
- Implante um aplicativo conteinerizado no Cloud Run:
gcloud run deploy ${SERVICE_NAME} \
--image ${IMAGE_NAME} \
--allow-unauthenticated \
--max-instances=3
Em caso de implantação bem-sucedida, a linha de comando exibe o URL de serviço. Nesse momento, o serviço está em execução.
Agora você pode acessar o contêiner implantado abrindo o URL de serviço em qualquer janela do navegador.
Clique em Verificar meu progresso para conferir se você executou a tarefa.
Criar um coletor do Cloud Run.
Tarefa 5: Criar um gatilho de evento do Cloud Pub/Sub
Uma forma de receber eventos é pelo Cloud Pub/Sub. Os aplicativos personalizados podem publicar mensagens no Cloud Pub/Sub, e essas mensagens podem ser entregues aos coletores do Google Cloud Run via Eventarc para Cloud Run.
Criar um gatilho
- Primeiro, confira mais detalhes sobre os parâmetros necessários para criar um gatilho para eventos do Cloud Pub/Sub:
gcloud eventarc providers describe \
pubsub.googleapis.com
- Crie um gatilho para filtrar eventos publicados no tópico do Cloud Pub/Sub para o serviço do Cloud Run implantado:
gcloud eventarc triggers create trigger-pubsub \
--destination-run-service=${SERVICE_NAME} \
--event-filters="type=google.cloud.pubsub.topic.v1.messagePublished"
Encontrar o tópico
- O gatilho do Pub/Sub cria um tópico do Pub/Sub nos bastidores. Encontre e atribua a uma variável de ambiente:
- Exporte o ID do TÓPICO
export TOPIC_ID=$(gcloud eventarc triggers describe trigger-pubsub \
--format='value(transport.pubsub.topic)')
- Confirme se um ID de TÓPICO está disponível
echo ${TOPIC_ID}
Saída:
projects/{{{project_0.project_id | "PROJECT_ID"}}}/locations/{{{project_0.default_region | "REGION"}}}/providers/pubsub.googleapis.com
Testar o gatilho
- Para verificar se o gatilho foi criado, liste todos os gatilhos:
gcloud eventarc triggers list
Saída:
NAME: trigger-pubsub
TYPE: google.cloud.pubsub.topic.v1.messagePublished
DESTINATION: Cloud Run service: event-display
ACTIVE: Yes
LOCATION: {{{project_0.default_region | "REGION"}}}
Observação: Pode ser necessário aguardar até 5 minutos para que a criação do gatilho seja propagada e ele comece a filtrar eventos.
- Para simular o envio de mensagens por um aplicativo personalizado, você pode usar um comando
gcloud para acionar um evento:
gcloud pubsub topics publish ${TOPIC_ID} --message="Hello there"
-
No Menu de navegação > Sem servidor > Cloud Run, clique em exibição de eventos.
-
Clique em Registros.
O coletor do Cloud Run que você criou registra o corpo da mensagem recebida. Você pode conferir isso na seção "Registros" da sua instância do Cloud Run:

Clique em Verificar meu progresso para conferir se você executou a tarefa.
Criar um gatilho de evento do Cloud Pub/Sub.
Excluir o gatilho
Tarefa 6: Criar um gatilho de eventos dos Registros de auditoria
Em seguida, configure um gatilho para detectar eventos dos registros de auditoria. Você vai detectar eventos do Cloud Storage nos registros de auditoria.
Criar um bucket
- Crie uma variável de ambiente para o bucket:
export BUCKET_NAME=$(gcloud config get-value project)-cr-bucket
- Crie um bucket do Cloud Storage na mesma região do serviço do Cloud Run implantado:
gsutil mb -p $(gcloud config get-value project) \
-l $(gcloud config get-value run/region) \
gs://${BUCKET_NAME}/
Clique em Verificar meu progresso para conferir se você executou a tarefa.
Criar um bucket.
Ativar os registro de auditoria
Para receber eventos de um serviço, é necessário ativar os registros de auditoria.
-
No Menu de navegação, selecione IAM e administrador > Registros de auditoria.
-
Na lista de serviços, marque a caixa do Google Cloud Storage.
-
No lado direito, clique na guia TIPO DE REGISTRO. Gravação de admin é selecionado por padrão. Selecione também Leitura de admin, Leitura de dados e Gravação de dados e clique em Salvar.
Testar registros de auditoria
Para aprender a identificar os parâmetros será necessário configurar um gatilho real e realizar uma operação real.
- Execute o seguinte comando para criar um arquivo de texto chamado
random.txt:
echo "Hello World" > random.txt
- Faça upload do arquivo
random.txt para o bucket:
gsutil cp random.txt gs://${BUCKET_NAME}/random.txt
Agora, veja que tipo de registro de auditoria essa atualização gerou.
-
No console do Cloud, acesse Menu de navegação > Logging > Análise de registros.
-
Em Recurso, escolha Bucket do GCS > [Bucket Name] > Local e selecione seu bucket e o local dele. Clique em Aplicar.

Observação: há uma certa latência para que os registros de auditoria apareçam na interface do Visualizador de registros. Se você não vir Bucket do GCS na lista de recursos, aguarde um pouco antes de tentar novamente.
- Clique em Run Query.
Depois de executar a consulta, você vai ver os registros do bucket de armazenamento. Um deles deve ser storage.buckets.create.
- Anote o
serviceName, methodName e resourceName. Você vai usar esses valores para criar o gatilho.
Criar um gatilho
Agora você já pode criar um gatilho de evento para registros de auditoria.
- Confira mais detalhes sobre os parâmetros necessários para criar o gatilho:
gcloud eventarc providers describe cloudaudit.googleapis.com
- Crie o gatilho com os filtros certos:
gcloud eventarc triggers create trigger-auditlog \
--destination-run-service=${SERVICE_NAME} \
--event-filters="type=google.cloud.audit.log.v1.written" \
--event-filters="serviceName=storage.googleapis.com" \
--event-filters="methodName=storage.objects.create" \
--service-account=${PROJECT_NUMBER}-compute@developer.gserviceaccount.com
Observação: parâmetro resourceName
- Há um campo opcional resourceName. Fornecer um caminho completo do recurso (por exemplo, projects/_/buckets/test123) vai filtrar os eventos relacionados ao recurso específico. Se você não fornecer nenhum caminho de recurso, os eventos de qualquer recurso correspondente ao serviceName e methodName fornecidos serão filtrados. Nomes de recursos parciais (por exemplo, projects/project-id) não são aceitos e não vão funcionar.
- Para métodosNames do tipo "create" (por exemplo, storage.buckets.create para criar um bucket do Cloud Storage), é melhor deixar resourceNames em branco, porque resourceName pode ser gerado dinamicamente para alguns serviceNames e não pode ser previsto com antecedência.
- Para methodNames que são do tipo "read", "update" ou "delete" (por exemplo, storage.buckets.update para atualizar um bucket específico do Cloud Storage), você pode especificar o caminho completo do recurso.
Testar o gatilho
- Liste todos os gatilhos para confirmar que o gatilho foi criado com sucesso:
gcloud eventarc triggers list
Saída:
NAME: trigger-auditlog
TYPE: google.cloud.audit.log.v1.written
DESTINATION: Cloud Run service: event-display
ACTIVE: Yes
LOCATION: {{{project_0.default_region | "REGION"}}}
- Aguarde até 10 minutos para que a criação do gatilho seja propagada e para que ele comece a filtrar eventos.
Quando estiver pronto, ele vai filtrar os eventos de criação e enviá-los para o serviço. Agora você já pode disparar um evento.
- Faça upload do mesmo arquivo para o bucket do Cloud Storage como fez antes:
gsutil cp random.txt gs://${BUCKET_NAME}/random.txt
- Acesse Menu de navegação > Cloud Run para verificar os registros do serviço do Cloud Run. O evento recebido deve aparecer.
Clique em Verificar meu progresso para conferir se você executou a tarefa.
Criar um gatilho de eventos dos Registros de Auditoria.
Excluir o gatilho
- Você pode excluir o gatilho depois de concluir o teste:
gcloud eventarc triggers delete trigger-auditlog
Parabéns!
Você aprendeu sobre eventos para o Cloud Run na infraestrutura do Google Cloud. Ao longo deste laboratório, você realizou as seguintes tarefas:
- Eventos do Cloud Run
- Criar um coletor do Cloud Run
- Criar um gatilho de evento para o Cloud Pub/Sub
- Criar um gatilho de evento para registros de auditoria
Saiba mais/Próximas etapas
Treinamento e certificação do Google Cloud
Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.
Manual atualizado em 2 de maio de 2024
Laboratório testado em 2 de maio de 2024
Copyright 2026 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.