As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Primeiros passos: Crie um EventBridge cachimbo da Amazon
Para nos familiarizarmos com os tubos e seus recursos, usaremos um CloudFormation modelo para configurar um EventBridge tubo e os componentes associados. Em seguida, poderemos explorar atributos de pipe variados.
dica
Para uma experiência de aprendizado mais abrangente e prática, experimente o EventBridge Pipes
O modelo cria um EventBridge canal que conecta um stream de uma tabela do DynamoDB a uma fila do Amazon SQS. Sempre que um registro é criado ou modificado na tabela do banco de dados, o pipe envia o evento resultante para a fila.
O pipe implantado consiste em:
Uma tabela (e um fluxo) do DynamoDB para funcionar como a origem do pipe e uma fila do Amazon SQS como o destino.
Uma função de execução que EventBridge concede as permissões necessárias para acessar a tabela do DynamoDB e a fila do Amazon SQS.
O pipe propriamente dito, que contém um filtro de evento que só seleciona eventos gerados quando um item da tabela é criado (inserido) ou modificado.
Para obter detalhes técnicos específicos do modelo, consulte Detalhes do modelo.
Criando o tubo usando CloudFormation
Para criar o tubo e seus recursos associados, criaremos um CloudFormation modelo e o usaremos para criar uma pilha contendo um tubo de amostra, completo com origem e destino.
Importante
Você receberá uma cobrança pelos recursos da Amazon usados se criar uma pilha com base nesse modelo.
Primeiro, crie o CloudFormation modelo.
Na seção Modelo, clique no ícone de cópia na guia JSON ou YAML para copiar o conteúdo do modelo.
Copie o conteúdo do modelo em um novo arquivo.
Salve o arquivo localmente.
Em seguida, use o modelo que você salvou para provisionar uma CloudFormation pilha.
Abra o CloudFormation console em https://console.aws.amazon.com/cloudformation/
. Na página Pilhas, no menu Criar pilha, escolha com novos recursos (padrão).
Especifique o modelo:
Em Pré-requisito, escolha Escolher um modelo existente.
Em Especificar modelo, escolha Fazer upload de um arquivo de modelo.
Selecione Escolher arquivo, navegue até o arquivo de modelo e selecione-o.
Escolha Próximo.
Especifique os detalhes da pilha:
Digite um nome de pilha.
Para parâmetros, aceite os valores padrão ou insira os próprios.
Escolha Próximo.
Configurar as opções da pilha:
Em Opções de falha de pilha, escolha Excluir todos os recursos recém-criados.
nota
A escolha dessa opção evita que você seja cobrado por recursos cuja política de exclusão especifica que eles sejam retidos mesmo que a criação da pilha falhe. Para ter mais informações, consulte Atributo
DeletionPolicyno Guia do usuário do CloudFormation .Aceite todos os outros valores padrão.
Em Capacidades, marque a caixa para reconhecer que isso CloudFormation pode criar recursos do IAM em sua conta.
Escolha Próximo.
Revise os detalhes a pilha e selecione Enviar.
Crie a pilha usando CloudFormation ()AWS CLI
Você também pode usar o AWS CLI para criar a pilha.
-
Use o comando
create-stack.Aceite os valores de parâmetro padrão do modelo, especificando o nome da pilha. Use o parâmetro
template-bodypara passar o conteúdo do modelo, outemplate-urlpara especificar um local de URL.aws cloudformation create-stack \ --stack-nameeventbridge-rule-tutorial\ --template-bodytemplate-contents\ --capabilities CAPABILITY_IAMSubstitua o(s) valor(es) padrão de um ou mais parâmetros de modelo. Por exemplo:
aws cloudformation create-stack \ --stack-nameeventbridge-rule-tutorial\ --template-bodytemplate-contents\ --parameters \ ParameterKey=SourceTableName,ParameterValue=pipe-example-source\ ParameterKey=TargetQueueName,ParameterValue=pipe-example-target\ ParameterKey=PipeName,ParameterValue=pipe-with-filtering-example\ --capabilities CAPABILITY_IAM
CloudFormation cria a pilha. Quando a criação da pilha for concluída, os recursos da pilha estarão prontos para uso. Você pode usar a guia Recursos na página de detalhes da pilha para visualizar os recursos que foram provisionados em sua conta.
Exploração dos recursos de pipe
Depois que o tubo for criado, você poderá usar o EventBridge console para observar a operação do tubo e testar a entrega do evento.
Abra o EventBridge console em https://console.aws.amazon.com/events/casa? #/tubos
. -
Escolha o pipe criado por você.
Na página de detalhes do pipe, a seção Componentes do pipe exibe os recursos que compõem o tubo e contém guias que dão mais detalhes sobre cada componente.
Você pode encontrar a função de execução que criamos para o pipe na guia Configurações, na seção Permissões.
Exame do filtro de pipe
Antes de testarmos a operação do pipe, vamos examinar o filtro que especificamos para controlar quais eventos são enviados para o destino. O pipe só enviará eventos correspondentes aos critérios de filtro para o destino, e todos os outros são descartados. Nesse caso, só queremos que os eventos gerados quando as entradas de tabela são criadas ou modificadas enviadas para a fila do Amazon SQS.
Na página de detalhes do pipe, em Componentes do pipe, escolha a guia Filtragem.
Incluímos um filtro que só seleciona eventos nos quais o
eventNameestá definido comoINSERTouMODIFY.{ "eventName": ["INSERT", "MODIFY"] }
Envio de eventos pelo pipe
Em seguida, geraremos eventos na fonte do pipe para testar se a filtragem e a entrega do pipe estão funcionando corretamente. Para isso, vamos criar e editar um item na tabela do DynamoDB especificada por nós como a fonte do pipe.
Na página de detalhes do pipe, em Componentes do pipe, escolha a guia Fonte.
Em Fonte, escolha o nome do fluxo do DynamoDB.
Isso abre o console do DynamoDB em uma janela à parte, com os detalhes da tabela de origem exibidos.
Escolha Explore table items (Explorar itens da tabela).
-
Gere um evento
INSERTcriando um item na tabela:Selecione Create Item (Criar item).
Adicione valores para os atributos Álbum e Artista.
Selecione Create Item (Criar item).
Gere um evento
INSERTe um eventoDELETEeditando o item:Escolha o item na lista e, no menu Ações, escolha Editar item.
Insira um novo valor para o atributo Álbum ou Artista.
Marque a caixa que confirma que você está alterando o valor das chaves de item e escolha Recriar item.
Isso resulta na exclusão e na recriação do item, gerando um evento
DELETEe, em seguida, um novo eventoINSERT.
Gere um evento
MODIFYadicionando um atributo ao item:Escolha o item na lista e, no menu Ações, escolha Editar item.
No menu Adicionar novo atributo, escolha Número.
Para o nome do atributo, insira Ano e, em seguida, insira um valor para o atributo. Escolha Save and close.
Confirmação da entrega do evento pelo pipe
Por fim, confirmaremos que o pipe filtrou e entregou com êxito os eventos que geramos ao criar e editar o item da tabela no DynamoDB.
Na página de detalhes do pipe, em Componentes do pipe, escolha a guia Destino.
Em Destino, escolha o nome da fila do Amazon SQS.
Isso abre o console do Amazon SQS em uma janela à parte, com os detalhes da fila de destino exibidos.
Escolha Enviar e receber mensagens.
Em Receber mensagens, escolha Sondar mensagens.
O Amazon SQS carrega as mensagens recebidas na fila. Clique em uma mensagem individual para ver os detalhes.
Deve haver três mensagens de evento na fila:
Duas do tipo
INSERT, uma gerada quando você criou o item da tabela pela primeira vez, e a outra gerada quando você recriou o item alterando um valor de chave.Uma do tipo
MODIFY, gerada quando você adicionou um atributo ao item da tabela.
Não há uma mensagem de evento do tipo
DELETEna fila, mesmo que uma tenha sido gerada quando você excluiu e recriou o item da tabela alterando um valor de chave. O filtro de pipe que especificamos só é selecionado emINSERTeMODIFY, logo, o pipe filtrou o eventoDELETE, em vez de entregá-lo na fila.
Limpar: exclusão de recursos
Como uma etapa final, excluiremos a pilha e os recursos que ela contém.
Importante
Você receberá uma cobrança pelos recursos da Amazon contidos na pilha enquanto ela existir.
Abra o CloudFormation console em https://console.aws.amazon.com/cloudformation/
. -
Na página Pilhas, escolha a pilha criada a partir do modelo, escolha Excluir e confirme para Excluir.
CloudFormation inicia a exclusão da pilha e de todos os recursos que ela inclui.
CloudFormation detalhes do modelo
Esse modelo cria recursos e concede permissões na conta.
Recursos
O CloudFormation modelo deste tutorial criará os seguintes recursos em sua conta:
Importante
Você receberá uma cobrança pelos recursos da Amazon usados se criar uma pilha com base nesse modelo.
AWS::DynamoDB::Table: uma tabela do DynamoDB que funciona como a fonte de eventos do pipe.AWS::SQS::Queue: uma fila do Amazon SQS que funciona como destino para os eventos que passam pelo pipe.AWS::IAM::Role: uma função de execução do IAM que concede permissões ao serviço EventBridge Pipes em sua conta.AWS::Pipes::Pipe: o pipe que conecta a tabela do DynamoDB à fila do Amazon SQS.
Permissões
O modelo inclui um recurso AWS::IAM::Role que representa uma função de execução. Essa função concede ao serviço EventBridge Pipes (pipes.amazonaws.com) as seguintes permissões em sua conta.
As seguintes permissões têm como escopo a tabela do DynamoDB e transmitem o modelo criado como a fonte do evento para o pipe:
dynamodb:DescribeStreamdynamodb:GetRecordsdynamodb:GetShardIteratordynamodb:ListStreams
A seguinte permissão tem como escopo a fila do Amazon SQS criada pela pilha como o destino do pipe:
sqs:SendMessage
CloudFormation modelo
Salve o código JSON ou YAML a seguir como um arquivo separado para usar como CloudFormation modelo neste tutorial.