

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á.

# Ônibus para eventos na Amazon EventBridge
<a name="eb-event-bus"></a>

Um barramento de eventos é um roteador que recebe [eventos](eb-events.md) e os entrega a zero ou mais destinos ou *destinos*. Os barramentos de eventos são adequados para rotear eventos de várias origens para vários destinos, com a transformação opcional dos eventos antes da entrega a um destino. 

![\[As fontes enviam eventos para um EventBridge barramento de eventos, que os encaminha para os destinos apropriados.\]](http://docs.aws.amazon.com/pt_br/eventbridge/latest/userguide/images/bus_eventbridge_conceptual.svg)


As [regras](eb-rules.md) associadas ao barramento de eventos avaliam os eventos à medida que eles chegam. Cada regra verifica se um evento corresponde ao padrão da regra. Se o evento coincidir, EventBridge envia o evento 

Uma regra é associada a um barramento de eventos específico. Assim, a regra se aplica somente aos eventos recebidos por esse barramento de eventos. 

**nota**  
Você também pode processar eventos usando EventBridge Pipes. EventBridge O Pipes é destinado a point-to-point integrações; cada tubo recebe eventos de uma única fonte para processamento e entrega a um único destino. Os pipes também incluem suporte para transformações avançadas e enriquecimento de eventos antes da entrega a um destino. Para obter mais informações, consulte [Amazon EventBridge Pipes](eb-pipes.md).

## Como os ônibus para eventos funcionam em EventBridge
<a name="eb-what-is-how-it-works"></a>

Os barramentos de eventos permitem o roteamento de eventos de várias origens para vários *destinos*. 

Em um alto nível, veja como isso funciona:

1. Uma fonte de eventos, que pode ser um AWS serviço, seu próprio aplicativo personalizado ou um provedor de SaaS, envia um evento para um barramento de eventos.

1. EventBridge em seguida, avalia o evento em relação a cada *regra* definida para esse barramento de eventos. 

   Para cada evento que corresponda a uma regra EventBridge , envie o evento para os destinos especificados para essa regra. Opcionalmente, como parte da regra, você também pode EventBridge especificar como transformar o evento antes de enviá-lo ao (s) destino (s).

   Um evento pode corresponder a várias regras, e cada regra pode especificar até cinco destinos. (Um evento pode não corresponder a nenhuma regra e, nesse caso, não EventBridge requer nenhuma ação.)

![\[Um barramento de eventos compara os eventos com as regras e envia os eventos correspondentes aos destinos especificados.\]](http://docs.aws.amazon.com/pt_br/eventbridge/latest/userguide/images/bus-overview_eventbridge_conceptual.svg)


Considere um exemplo usando o barramento de eventos EventBridge padrão, que recebe automaticamente eventos dos AWS serviços:

1. É possível uma regra no barramento de eventos padrão para o evento `EC2 Instance State-change Notification`: 
   + Especifique que a regra corresponda aos eventos em que uma instância do Amazon EC2 alterou seu estado `state` para `running`.

     Isto é feito ao especificar o JSON que define os atributos e valores que um evento deve corresponder para acionar a regra. Isto é chamado de *padrão de evento*. 

     ```
     {
       "source": ["aws.ec2"],
       "detail-type": ["EC2 Instance State-change Notification"],
         "detail": {
           "state": ["running"]
       }
     }
     ```
   + Especifique o destino da regra para ser uma determinada função do Lambda.

1. Sempre que uma instância do Amazon EC2 muda de estado, o Amazon EC2 (a origem do evento) envia automaticamente esse evento para o barramento de eventos padrão.

1. EventBridge avalia todos os eventos enviados para o barramento de eventos padrão em relação à regra que você criou.

   Se o evento corresponder à sua regra (ou seja, se o evento foi uma instância do Amazon EC2 mudando de estado para`running`), EventBridge envia o evento para o destino especificado. Neste caso, esta é a função do Lambda.

 O seguinte vídeo descreve o que são os barramentos de eventos e explica algumas noções básicas sobre eles:




 O seguinte vídeo aborda os diferentes barramentos de eventos e quando usá-los:




# Conceitos de ônibus para eventos na Amazon EventBridge
<a name="eb-what-is-how-it-works-concepts"></a>

Aqui está uma análise mais detalhada dos principais componentes de uma arquitetura orientada a eventos construída em barramentos de eventos.

## Barramentos de eventos
<a name="eb-bus-concepts-buses"></a>

Um barramento de eventos é um roteador que recebe [eventos](eb-events.md) e os entrega a zero ou mais *destinos*. Use um barramento de eventos quando precisar rotear eventos de várias origens para vários destinos, com a transformação opcional dos eventos antes da entrega em um destino.

Sua conta inclui um *barramento de eventos padrão* que recebe automaticamente eventos dos AWS serviços. Você também pode:
+ Crie barramentos de eventos adicionais, chamados de *barramentos de eventos personalizados*, e especifique quais eventos eles receberão.
+ Crie *[barramentos de eventos parceiros](eb-saas.md)*, que recebem eventos de parceiros de SaaS.

Os casos de uso comuns para barramentos de eventos incluem:
+ Usar um barramento de eventos como um agente entre diferentes workloads, serviços ou sistemas.
+ Usar vários barramentos de eventos em suas aplicações para dividir o tráfego do evento. Por exemplo, criar um barramento para processar eventos contendo informações de identificação pessoal (PII) e outro barramento para eventos que não o façam.
+ Agregar eventos enviando eventos de vários barramentos de eventos para um barramento de eventos centralizado. Este barramento centralizado pode estar na mesma conta que os outros barramentos, mas também pode estar em uma conta ou região diferente.

![\[Os diferentes barramentos de eventos que recebem eventos de serviços da AWS , aplicações personalizadas ou origens de parceiros.\]](http://docs.aws.amazon.com/pt_br/eventbridge/latest/userguide/images/bus-overview-types_eventbridge_conceptual.svg)


## Eventos
<a name="eb-bus-concepts-events"></a>

Em sua forma mais simples, um EventBridge evento é um objeto JSON enviado para um barramento ou canal de eventos. 

No contexto da arquitetura orientada a eventos (EDA), um evento geralmente representa um indicador de uma mudança em um recurso ou ambiente.

Para obter mais informações, consulte [Eventos na Amazon EventBridge](eb-events.md).

## Origens de eventos
<a name="eb-bus-concepts-event-sources"></a>

EventBridge pode receber eventos de fontes de eventos, incluindo:
+ AWS serviços
+ Aplicações personalizadas
+ Parceiros de software como serviço (SaaS)

## Regras
<a name="eb-bus-concepts-rules"></a>

Uma regra recebe eventos de entrada e os encaminha como adequados para os destinos para processamento. É possível especificar como cada regra invoca os destinos com base em:
+ Um [padrão de evento](eb-event-patterns.md), que contém um ou mais filtros para combinar eventos. Os padrões de eventos podem incluir filtros que correspondem a:
  + **Metadados do evento**: dados *sobre* o evento, como a origem do evento ou a conta ou região na qual o evento se originou.
  + **Dados do evento**: as propriedades do evento em si. Estas propriedades variam de acordo com o evento.
  + **Conteúdo do evento**: os *valores reais* das propriedades dos dados do evento.
+ Um cronograma para invocar os destinos em intervalos regulares. 

  Você pode [especificar uma regra programada dentro EventBridge](eb-create-rule-schedule.md) ou usando o [EventBridge Scheduler.](using-eventbridge-scheduler.md) 
**nota**  
As regras programadas são um recurso antigo do EventBridge.  
EventBridgeoferece uma maneira mais flexível e poderosa de criar, executar e gerenciar tarefas agendadas centralmente, em grande escala: EventBridge Scheduler. Com o EventBridge Scheduler, você pode criar agendas usando expressões cron e rate para padrões recorrentes ou configurar invocações únicas. Você pode configurar janelas de tempo flexíveis para entregas, definir limites de novas tentativas e o tempo máximo de retenção de invocações de API com falha.   
O Scheduler é altamente personalizável e oferece escalabilidade aprimorada em relação às regras programadas, com um conjunto mais amplo de operações e serviços de API de destino. AWS Recomendamos que você use o Agendador para invocar destinos em uma programação.  
Para obter mais informações, consulte [Criar uma programação](using-eventbridge-scheduler.md#using-eventbridge-scheduler-create) o *[Guia do usuário do EventBridge Scheduler](https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html)*.

Cada regra é definida para um barramento de eventos específico e se aplica somente aos eventos desse barramento de eventos.

Uma única regra pode enviar um evento para até cinco destinos.

Por padrão, é possível configurar até 300 regras por barramento de eventos. Esta cota pode ser aumentada para milhares de regras no console [Service Quotas](https://console.aws.amazon.com/servicequotas/home). Como o limite de regras se aplica a cada barramento, se precisar de ainda mais regras, poderá criar barramentos de eventos personalizados adicionais em sua conta.

Também é possível personalizar a forma como os eventos são recebidos em sua conta criando barramentos de eventos com permissões diferentes para diferentes serviços.

Para personalizar a estrutura ou a data de um evento antes de EventBridge passá-lo para um destino, use o [transformador de entrada](eb-transform-target-input.md) para editar as informações antes que elas cheguem ao destino.

Para obter mais informações, consulte [Regras na Amazon EventBridge](eb-rules.md).

## Destinos
<a name="eb-bus-concepts-targets"></a>

Um destino é um recurso ou endpoint para o qual EventBridge envia um evento quando o evento corresponde ao padrão de evento definido para uma regra.

Um destino pode receber vários eventos de vários barramentos de eventos.

Para obter mais informações, consulte [Metas de ônibus para eventos na Amazon EventBridge](eb-targets.md).

## Atributos avançados para barramentos de eventos
<a name="eb-what-is-how-it-works-advanced"></a>

EventBridge inclui os seguintes recursos para ajudá-lo a desenvolver, gerenciar e usar barramentos de eventos.

**Como usar destinos de API para habilitar chamadas de API REST entre serviços**

EventBridge Os *[destinos da API](eb-api-destinations.md)* são endpoints HTTP que você pode definir como destino de uma regra, da mesma forma que enviaria dados de eventos para um AWS serviço ou recurso. Ao usar destinos de API, é possível usar chamadas de API para rotear eventos entre serviços da AWS , aplicações de SaaS integradas e suas aplicações externas à AWS. Ao criar um destino da API, é especificada uma conexão a ser usada para isso. Cada conexão inclui detalhes sobre o tipo de autorização e os parâmetros a serem usados para autorizar com o endpoint de destino da API.

**Arquivamento e reprodução de eventos para ajudar no desenvolvimento e na recuperação de desastres**

Também é possível *[arquivar](eb-archive-event.md)* ou salvar eventos e [reproduzi-los](eb-replay-archived-event.md) posteriormente a partir do arquivo. O arquivamento é útil para: 
+ Testar uma aplicação porque você tem um repositório de eventos para usar em vez de ter que esperar por novos eventos.
+ Hidratar um novo serviço quando ele é disponibilizado pela primeira vez on-line.
+ Adicionar mais durabilidade às suas aplicações orientadas por eventos.

**Como usar o Schema Registry para iniciar rapidamente a criação de padrões de eventos**

Ao criar aplicativos sem servidor que usam EventBridge, pode ser útil conhecer a estrutura de eventos típicos sem precisar gerar o evento. A estrutura do evento é descrita em [esquemas](eb-schema.md), que estão disponíveis para todos os eventos gerados pelos AWS serviços em EventBridge. 

Para eventos que não vêm de AWS serviços, você pode:
+ Criar ou fazer upload de esquemas personalizados.
+ Use o Schema Discovery para criar EventBridge automaticamente esquemas para eventos enviados ao barramento de eventos.

Depois de ter encontrado ou criado um esquema para um evento, faça download das vinculações de código para linguagens de programação populares.

**Como gerenciar o acesso a recursos com políticas**

Para organizar AWS recursos ou monitorar custos EventBridge, você pode atribuir uma etiqueta ou *[tag](eb-tagging.md)* personalizada aos AWS recursos. Usando [políticas baseadas em tags](eb-tag-policies.md), você pode controlar o que os recursos podem ou não fazer dentro EventBridge delas.

Além das políticas baseadas em tags, EventBridge oferece suporte a políticas [baseadas em identidade](eb-use-identity-based.md) e [recursos para controlar o acesso](eb-use-resource-based.md) a. EventBridge Use políticas baseadas em identidade para controlar as permissões de um grupo, perfil ou usuário. Use políticas baseadas em recursos para dar permissões específicas a cada recurso, como uma função do Lambda ou um tópico do Amazon SNS.

# Criar um barramento de eventos no Amazon EventBridge
<a name="eb-create-event-bus"></a>

É possível criar um [barramento de eventos](eb-event-bus.md) personalizado para receber [eventos](eb-events.md) de suas aplicações personalizadas. Suas aplicações também podem enviar eventos para seu barramento de eventos padrão. Ao criar um barramento de eventos, é possível anexar uma [política baseada em recursos](eb-use-resource-based.md) para conceder permissões a outras contas. Outras contas podem enviar eventos para o barramento de eventos na conta atual.

 O seguinte vídeo mostra a criação de barramentos de eventos:




**Como criar um barramento de eventos personalizado**

1. Abra o console do Amazon EventBridge em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação, selecione **Event buses (Barramentos de eventos)**.

1. Selecione **Create event bus (Criar barramento de eventos)**.

1. Insira um nome para o novo barramento de eventos.

1. Escolha a chave KMS para o EventBridge usar ao criptografar os dados de evento armazenados no barramento de eventos.
**nota**  
A descoberta de esquemas não é compatível com barramentos de eventos criptografados que usem uma chave gerenciada pelo cliente. Para habilitar a descoberta de esquemas em um barramento de eventos, opte por usar uma Chave pertencente à AWS. Para obter mais informações, consulte [Opções de chave KMS](eb-encryption-at-rest-key-options.md).
   + Escolha **Usar Chave pertencente à AWS** para o EventBridge criptografar os dados usando uma Chave pertencente à AWS.

     Esta Chave pertencente à AWS é uma chave KMS de propriedade do EventBridge e que gerencia para uso em várias contas da AWS. Em geral, a menos que seja necessário auditar ou controlar a chave de criptografia que protege os recursos, uma Chave pertencente à AWS é uma boa escolha. 

     Esse é o padrão.
   + Escolha **Usar chave gerenciada pelo cliente** para o EventBridge criptografar os dados usando a chave gerenciada pelo cliente especificada ou criada por você.

     Chaves gerenciadas pelo cliente são chaves do KMS disponíveis na sua conta do AWS que você cria, detém e gerencia. Você tem controle total sobre essas chaves KMS.

     1. Especifique uma chave gerenciada pelo cliente existente ou escolha **Criar uma nova chave KMS**.

        O EventBridge exibe o status da chave e todos os aliases de chave que tenham sido associados à chave gerenciada pelo cliente especificada.

     1. Escolha uma fila do Amazon SQS para usar como fila de mensagens não entregues (DLQ) do barramento de eventos, se existir.

        O EventBridge envia eventos não criptografados com êxito na DLQ, se configurada, para que você possa processá-los depois.

1. (Opcional) Em **Logs: opcional**, você pode configurar como o EventBridge registra em log informações do evento, inclusive como configurar esses logs. 

   Para obter mais informações sobre logs do barramento de eventos, consulte [Registro em log dos barramentos de eventos ](eb-event-bus-logs.md).

   Os logs do CloudWatch são selecionados como destino de log por padrão, assim como o nível de log de `ERROR`. Então, por padrão, o EventBridge cria um novo grupo de logs do CloudWatch para o qual ele envia registros de log contendo o nível de detalhe `ERROR`.

   Para o EventBridge enviar registros de log para qualquer um dos destinos de log compatíveis, faça o seguinte: 

   1. Em **Registros: opcional**, escolha os destinos para os quais deseja que os registros de log sejam entregues.

   1. Em **Nível de log**, escolha o nível de informações a para que o EventBridge inclua nos registros de log. O nível de log `ERROR` é selecionado por padrão.

      Para obter mais informações, consulte [Como especificar o nível do log](eb-event-bus-logs.md#eb-event-bus-logs-level).

   1. Selecione **Incluir dados detalhados** se você quiser que o EventBridge inclua informações de evento e destino em registros de log.

      Para obter mais informações, consulte [Inclusão de detalhes em logs](eb-event-bus-logs.md#eb-event-logs-data).

   1. Configure cada destino de log selecionado por você.

1. Configure os recursos opcionais do barramento de eventos:
   + Especifique uma política baseada em recurso por meio de um destes procedimentos:
     + Insira a política que inclui as permissões a serem concedidas para o barramento de eventos. É possível colar uma política de outra origem ou inserir o JSON da política. É possível usar uma das [políticas de exemplo](eb-event-bus-perms.md) e modificá-la para seu ambiente.
     + Para usar um modelo para a política, escolha **Carregar modelo**. Modifique a política conforme adequado para seu ambiente, incluindo a adição de ações adicionais que a entidade principal na política está autorizada a usar.

     Para obter mais informações sobre como conceder permissões a um barramento de eventos por meio de políticas baseadas em recursos, consulte [Permissões para ônibus de eventos na Amazon EventBridge](eb-event-bus-perms.md).
   + Habilitar um arquivamento (opcional)

     É possível criar um arquivo de eventos para poder reproduzi-los facilmente mais tarde. Por exemplo, você pode querer repetir eventos para se recuperar de erros ou validar uma nova funcionalidade em sua aplicação. Para obter mais informações, consulte . [Arquivando e reproduzindo eventos na Amazon EventBridge](eb-archive.md)

     1. Em **Arquivos**, selecione **Habilitado**.

     1. Especifique um nome e uma descrição para o arquivo.

        Você não poderá alterar o nome do arquivamento assim que ele tiver sido criado.

        Ao criar um arquivamento como parte da criação de um novo barramento de eventos, você não pode definir o período de retenção do evento ou um padrão de evento para o arquivamento. Você poderá especificá-los para o arquivamento depois que ele tiver sido criado. Para obter mais informações, consulte [Atualizar arquivos](event-bus-update-archive.md).
   + Habilitar a descoberta de esquemas (opcional)

     Habilite a descoberta de esquemas para que o EventBridge infira automaticamente os esquemas direto dos eventos em execução nesse barramento de eventos. Para obter mais informações, consulte . [Esquemas do Amazon EventBridge](eb-schema.md)

     1. Em **Descoberta de esquemas**, selecione **Habilitado**.
**nota**  
A descoberta de esquemas não é compatível com barramentos de eventos criptografados que usem uma chave gerenciada pelo cliente. Para habilitar a descoberta de esquemas em um barramento de eventos, opte por usar uma Chave pertencente à AWS. Para obter mais informações, consulte [Opções de chave KMS](eb-encryption-at-rest-key-options.md).
   + Especificar tags (opcional)

     Uma tag é um rótulo de atributo personalizado que você pode atribuir a um recurso da AWS. Use tags para identificar e organizar seus recursos da AWS. Muitos serviços da AWS oferecem suporte à marcação para que você possa atribuir a mesma tag a recursos de diferentes serviços para indicar que os recursos estão relacionados. Para obter mais informações, consulte . [Recursos de marcação na Amazon EventBridge](eb-tagging.md) 

     1. Em **Etiquetas**, escolha **Adicionar nova etiqueta**.

     1. Especifique uma chave e, opcionalmente, um valor para a nova tag.

1. Escolha **Criar**.

# Atualizando um ônibus de eventos na Amazon EventBridge
<a name="event-bus-update"></a>

É possível atualizar a configuração dos barramentos de eventos depois de criá-los. Isso inclui o barramento de eventos padrão, que é EventBridge criado automaticamente na sua conta.

**Como atualizar um barramento de eventos (console)**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação, selecione **Event buses (Barramentos de eventos)**.

1. Selecione o barramento de eventos que deseja atualizar.

1. Siga um dos procedimentos abaixo:
   + Para criar, editar ou excluir um arquivo, consulte os seguintes procedimentos:

     [Criação de arquivamentos](eb-archive-event.md)

     [Atualizar arquivos](event-bus-update-archive.md)

     [Exclusão de arquivamentos](eb-archive-delete.md)
   + Para adicionar ou remover tags, consulte o seguinte procedimento:

     [Gerenciar tags de barramento de eventos](eb-tagging.md#event-bus-update-tags)
   + Para gerenciar as permissões do barramento de eventos, consulte o seguinte procedimento:

     [Gerenciamento de permissões de barramento de eventos](eb-event-bus-permissions-manage.md)
   + Para alterar a AWS KMS chave usada para criptografar eventos, consulte o procedimento a seguir:

     [Atualizar a criptografia em um barramento de eventos](eb-encryption-event-bus-cmkey-configure.md#eb-encryption-event-bus-cmkey-update)

# Atualizando um barramento de eventos padrão usando AWS CloudFormation em EventBridge
<a name="event-bus-update-default-cfn"></a>

CloudFormation permite que você configure e gerencie seus AWS recursos em contas e regiões de forma centralizada e repetível, tratando a infraestrutura como código. CloudFormation faz isso permitindo que você crie *modelos*, que definem os recursos que você deseja provisionar e gerenciar.

Como EventBridge provisiona o barramento de eventos padrão em sua conta automaticamente, você não pode criá-lo usando um CloudFormation modelo, como faria normalmente com qualquer recurso que desejasse incluir em uma CloudFormation pilha. Para incluir o barramento de eventos padrão em uma CloudFormation pilha, você deve primeiro *importá-lo* para uma pilha. Depois de importar o barramento de eventos padrão para uma pilha, você pode atualizar as propriedades do barramento de eventos conforme desejar.

Para importar um recurso existente em uma pilha do CloudFormation nova ou existente, você precisa das seguintes informações:
+ Um identificador único para o recurso a ser importado.

  Para barramentos de eventos padrão, o identificador é `Name` e o valor do identificador é `default`.
+ Um modelo que descreve com precisão as propriedades atuais do recurso existente.

  O trecho do modelo abaixo contém um recurso `AWS::Events::EventBus` que descreve as propriedades atuais de um barramento de eventos padrão. Neste exemplo, o barramento de eventos foi configurado para usar a chave gerenciada pelo cliente e DLQ para criptografia em repouso.

  Além disso, o recurso `AWS::Events::EventBus` que descreve o barramento de eventos padrão que você deseja importar deve incluir uma propriedade `DeletionPolicy` definida como `Retain`.

  ```
  {
      "AWSTemplateFormatVersion": "2010-09-09",
      "Description": "Default event bus import example",
      "Resources": {
          "defaultEventBus": {
              "Type" : "AWS::Events::EventBus",
              "DeletionPolicy": "Retain",
              "Properties" : {
                  "Name" : "default",
                  "KmsKeyIdentifier" : "KmsKeyArn",
                  "DeadLetterConfig" : {
                      "Arn" : "DLQ_ARN"
                  }
              }
          }
      }
  }
  ```

Para obter mais informações, [consulte Como CloudFormation gerenciar os recursos existentes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import.html) no *Guia do CloudFormation usuário*.

# Excluindo um ônibus de eventos na Amazon EventBridge
<a name="event-bus-delete"></a>

É possível excluir um barramento de eventos personalizado ou de parceiro. Não é possível excluir o barramento de eventos padrão. A exclusão de um barramento de eventos exclui as regras associadas a ele.

**Para excluir um barramento de eventos usando o EventBridge console**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação, selecione **Event buses (Barramentos de eventos)**.

1. Selecione o barramento de eventos que deseja excluir.

1. Execute um destes procedimentos:
   + Escolha **Excluir**.
   + Selecione o nome do barramento de eventos.

     Na página de detalhes do barramento de eventos, escolha **Excluir**.

# Gerando um CloudFormation modelo a partir de um barramento de EventBridge eventos existente
<a name="eb-generate-event-bus-template"></a>

AWS CloudFormation permite que você configure e gerencie seus AWS recursos em contas e regiões de forma centralizada e repetível, tratando a infraestrutura como código. CloudFormation faz isso permitindo que você crie *modelos*, que definem os recursos que você deseja provisionar e gerenciar.

EventBridge permite que você gere modelos a partir dos barramentos de eventos existentes em sua conta, como uma ajuda para ajudá-lo a começar a desenvolver CloudFormation modelos. Além disso, EventBridge oferece a opção de incluir as regras associadas a esse barramento de eventos em seu modelo. Em seguida, você pode usar esses modelos como base para [criar pilhas](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) de recursos sob CloudFormation gerenciamento.

Para obter mais informações, CloudFormation consulte [*o Guia CloudFormation do usuário*.](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)

**nota**  
EventBridge não inclui [regras gerenciadas](eb-rules.md#eb-rules-managed) no modelo gerado.

Também é possível [gerar um modelo a partir de uma ou mais regras contidas em um barramento de eventos selecionado](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-create-template.html).

**Para gerar um CloudFormation modelo a partir de um ônibus de eventos**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação, selecione **Event buses (Barramentos de eventos)**.

1. Escolha o ônibus de eventos a partir do qual você deseja gerar um CloudFormation modelo.

1. No menu **Ações**, escolha **CloudFormation Modelo** e escolha em qual formato você EventBridge deseja gerar o modelo: **JSON** ou **YAML**.

   EventBridge exibe o modelo, gerado no formato selecionado. Por padrão, todas as regras associadas ao barramento de eventos são incluídas no modelo.

   1. Para gerar o modelo sem incluir regras, desmarque **Incluir regras nisso EventBus**.

1. EventBridge oferece a opção de baixar o arquivo de modelo ou copiar o modelo para a área de transferência.
   + Para baixar o arquivo de modelo, escolha **Baixar**.
   + Para copiar o modelo para a área de transferência, escolha **Copiar**.

1. Para sair do modelo, escolha **Cancelar**. 

Depois de personalizar seu CloudFormation modelo conforme necessário para seu caso de uso, você pode usá-lo para [criar pilhas](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) CloudFormation.

## Considerações ao usar CloudFormation modelos gerados pela Amazon EventBridge
<a name="eb-generate-event-bus-template-considerations"></a>

Considere os seguintes fatores ao usar um CloudFormation modelo que você gerou a partir de um barramento de eventos:
+ EventBridge não inclui nenhuma senha no modelo gerado.

  É possível editar o modelo para incluir [parâmetros de modelo](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html) que permitam aos usuários especificar senhas ou outras informações confidenciais ao usar o modelo para criar ou atualizar uma pilha do CloudFormation.

  Além disso, os usuários podem usar o Secrets Manager para criar um segredo na região desejada e depois editar o modelo gerado para empregar [parâmetros dinâmicos](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html#dynamic-references-secretsmanager).
+ Os destinos no modelo gerado permanecem exatamente como foram especificados no barramento de eventos original. Isto pode levar a problemas entre regiões se você não editar adequadamente o modelo antes de usá-lo para criar pilhas em outras regiões.

  Além disso, o modelo gerado não criará os destinos downstream automaticamente.

# Permissões para ônibus de eventos na Amazon EventBridge
<a name="eb-event-bus-perms"></a>

O [barramento de eventos](eb-event-bus.md) padrão em sua AWS conta só permite [eventos](eb-events.md) de uma conta. É possível conceder permissões adicionais a um barramento de eventos anexando uma [política baseada em recursos](eb-use-resource-based.md) a ele. Com uma política baseada em recursos, é possível permitir `PutEvents``PutRule`, e chamadas de API `PutTargets` de outra conta. Também é possível usar [as condições do IAM](eb-use-conditions.md) na política para conceder permissões a uma organização, aplicar [tags](eb-tagging.md) ou filtrar eventos somente para aqueles de uma regra ou conta específica. É possível definir uma política baseada em recursos para um barramento de eventos ao criá-lo ou posteriormente.

EventBridge APIs que aceitam um `Name` parâmetro de barramento de eventos`PutRule`, como,`PutTargets`,,`DeleteRule`, `RemoveTargets``DisableRule`, e `EnableRule` também aceitam o ARN do barramento de eventos. Use esses parâmetros para referenciar barramentos de eventos entre contas ou regiões por meio do. APIs Por exemplo, você pode chamar `PutRule` para criar uma [regra](eb-rules.md) em um barramento de eventos em uma conta diferente sem precisar assumir um perfil.

É possível anexar as políticas de exemplo neste tópico a um perfil do IAM para conceder permissão para enviar eventos para uma conta ou região diferente. Use os perfis do IAM para definir políticas de controle organizacional e limites sobre quem pode enviar eventos da sua conta para outras contas. Recomendamos sempre usar perfis do IAM quando o destino de uma regra é um barramento de eventos. É possível anexar perfis do IAM usando chamadas `PutTarget`. Para obter informações sobre como criar uma regra para enviar eventos para uma conta ou região diferente, consulte [Envio e recebimento de eventos entre AWS contas na Amazon EventBridge](eb-cross-account.md).

# Gerenciando permissões de ônibus de eventos na Amazon EventBridge
<a name="eb-event-bus-permissions-manage"></a>

Use o procedimento a seguir para modificar as permissões de um barramento de eventos existente. Para obter informações sobre como usar CloudFormation para criar uma política de barramento de eventos, consulte [AWS::Events::EventBusPolítica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html).

**Para gerenciar permissões para um barramento de eventos existente**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação à esquerda, escolha **Barramentos de eventos**.

1. Em **Nome**, escolha o nome do barramento de eventos do para o qual gerenciar as permissões.

   Se uma política de recursos estiver conectada ao barramento de eventos, a política será exibida.

1. Escolha **Gerenciar permissões** e siga um destes procedimentos:
   + Insira a política que inclui as permissões a serem concedidas para o barramento de eventos. É possível colar uma política de outra origem ou inserir o JSON da política.
   + Para usar um modelo para a política, escolha **Carregar modelo**. Modifique a política conforme adequado para seu ambiente e adicione ações adicionais que a entidade principal na política está autorizada a usar.

1. Selecione **Atualizar**.

O modelo fornece exemplos de declarações de política que você pode personalizar para sua conta e seu ambiente. O modelo não é uma política válida. É possível modificar o modelo para seu caso de uso ou copiar uma das políticas de exemplo e personalizá-la.

O modelo carrega políticas que incluem um exemplo de como conceder permissões a uma conta para usar a ação `PutEvents`, como conceder permissões a uma organização e como conceder permissões à conta para gerenciar regras na conta. Também é possível personalizar o modelo para sua conta específica e excluir as outras seções do modelo. Mais políticas de exemplo estão incluídas adiante nesta seção.

Se tentar atualizar as permissões do barramento, mas a política contiver um erro, uma mensagem de erro indicará o problema específico na política.

```
  ### Choose which sections to include in the policy to match your use case. ###
  ### Be sure to remove all lines that start with ###, including the ### at the end of the line. ###

  ### The policy must include the following: ###

  {
    "Version": "2012-10-17",		 	 	 
    "Statement": [

      ### To grant permissions for an account to use the PutEvents action, include the following, otherwise delete this section: ###

      {

        "Sid": "AllowAccountToPutEvents",
        "Effect": "Allow",
        "Principal": {
          "AWS": "<ACCOUNT_ID>"
        },
        "Action": "events:PutEvents",
        "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/default"
      },

      ### Include the following section to grant permissions to all members of your AWS Organizations to use the PutEvents action ###

      {
        "Sid": "AllowAllAccountsFromOrganizationToPutEvents",
        "Effect": "Allow",
        "Principal": "*",
        "Action": "events:PutEvents",
        "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/default",
        "Condition": {
          "StringEquals": {
            "aws:PrincipalOrgID": "o-yourOrgID"
          }
        }
      },

      ### Include the following section to grant permissions to the account to manage the rules created in the account ###

      {
        "Sid": "AllowAccountToManageRulesTheyCreated",
        "Effect": "Allow",
        "Principal": {
          "AWS": "<ACCOUNT_ID>"
        },
        "Action": [
          "events:PutRule",
          "events:PutTargets",
          "events:DeleteRule",
          "events:RemoveTargets",
          "events:DisableRule",
          "events:EnableRule",
          "events:TagResource",
          "events:UntagResource",
          "events:DescribeRule",
          "events:ListTargetsByRule",
          "events:ListTagsForResource"],
        "Resource": "arn:aws:events:us-east-1:123456789012:rule/default",
        "Condition": {
          "StringEqualsIfExists": {
            "events:creatorAccount": "<ACCOUNT_ID>"
          }
        }
    }]
  }
```

# Exemplo de política: enviar eventos para o barramento padrão em uma conta diferente na Amazon EventBridge
<a name="eb-event-bus-example-policy-cross-account"></a>

O exemplo de política a seguir concede à conta 111122223333 permissão para publicar eventos no barramento de eventos padrão na conta 123456789012.

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
       {
        "Sid": "sid1",
        "Effect": "Allow",
        "Principal": {"AWS":"arn:aws:iam::111112222333:root"},
        "Action": "events:PutEvents",
        "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/default"
        }
    ]
  }
```

------

# Exemplo de política: enviar eventos para um ônibus personalizado em uma conta diferente na Amazon EventBridge
<a name="eb-event-bus-example-policy-cross-account-custom-bus-source"></a>

O exemplo de política a seguir concede à conta 111122223333 permissão para publicar eventos no `central-event-bus` na conta 123456789012, mas somente para eventos com um valor de origem definido como `com.exampleCorp.webStore` e um `detail-type` definido como `newOrderCreated`.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "WebStoreCrossAccountPublish",
      "Effect": "Allow",
      "Action": [
        "events:PutEvents"
      ],
      "Principal": {
        "AWS": "arn:aws:iam::123456789012:root"
      },
      "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/central-event-bus",
      "Condition": {
        "ForAllValues:StringEquals": {
          "events:source": "com.exampleCorp.webStore",
          "events:detail-type": "newOrderCreated"
        }
      }
    }
  ]
}
```

------

# Exemplo de política: enviar eventos para um ônibus de eventos na mesma conta na Amazon EventBridge
<a name="eb-event-bus-example-policy-same-account"></a>

O exemplo de política a seguir anexado a um barramento de eventos chamado `CustomBus1` permite que o barramento de eventos receba eventos da mesma conta e região.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "events:PutEvents"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:111122223333:event-bus/CustomBus1"
            ]
        }
    ]
}
```

------

# Exemplo de política: enviar eventos de regras específicas para um EventBridge ônibus da Amazon em uma região diferente
<a name="eb-event-bus-example-policy-restrict-rule"></a>

O exemplo de política a seguir concede à conta 111122223333 permissão para enviar eventos que correspondam a uma regra nomeada `SendToUSE1AnotherAccount` nas regiões do Oriente Médio (Bahrein) e Oeste dos EUA (Oregon) para um barramento de eventos chamado `CrossRegionBus`no Leste dos EUA (Norte da Virgínia) na conta 123456789012. O exemplo de política é adicionado ao barramento de eventos chamado `CrossRegionBus` na conta 123456789012. A política permite eventos somente se eles corresponderem a uma regra especificada para o barramento de eventos na conta 111122223333. A declaração `Condition` restringe os eventos somente aos eventos que correspondam às regras com o ARN da regra especificada.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowSpecificRulesAsCrossRegionSource",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111112222333:root"
      },
      "Action": "events:PutEvents",
      "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/CrossRegionBus",
      "Condition": {
        "ArnEquals": {
          "aws:SourceArn": [
            "arn:aws:events:us-west-2:111112222333:rule/CrossRegionBus/SendToUSE1AnotherAccount",
            "arn:aws:events:me-south-1:111112222333:rule/CrossRegionBus/SendToUSE1AnotherAccount"
          ]
        }
      }
    }
  ]
}
```

------

# Exemplo de política: enviar eventos somente de uma região específica para uma região diferente na Amazon EventBridge
<a name="eb-event-bus-example-policy-specific-region"></a>

O exemplo de política a seguir concede à conta 111122223333 permissão para enviar todos os eventos gerados nas regiões do Oriente Médio (Bahrein) e Oeste dos EUA (Oregon) para um barramento de eventos chamado `CrossRegionBus` no Leste dos EUA (Norte da Virgínia) na conta 123456789012. A conta 111122223333 não tem permissão para enviar eventos gerados em nenhuma outra região.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowCrossRegionEventsFromUSWest2AndMESouth1",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111112222333:root"
      },
      "Action": "events:PutEvents",
      "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/CrossRegionBus",
      "Condition": {
        "ArnEquals": {
          "aws:SourceArn": [
            "arn:aws:events:us-west-2:*:*",
            "arn:aws:events:me-south-1:*:*"
          ]
        }
      }
    }
  ]
}
```

------

# Exemplo de política: negar o envio de eventos de regiões específicas na Amazon EventBridge
<a name="eb-event-bus-example-policy-deny-regions"></a>

O exemplo de política a seguir anexado a um barramento de eventos chamado `CrossRegionBus` na conta 123456789012 concede permissão para que o barramento de eventos receba eventos da conta 111122223333, mas não eventos gerados na região Oeste dos EUA (Oregon).

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "1AllowAnyEventsFromAccount111112222333",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111112222333:root"
      },
      "Action": "events:PutEvents",
      "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/CrossRegionBus"
    },
    {
      "Sid": "2DenyAllCrossRegionUSWest2Events",
      "Effect": "Deny",
      "Principal": {
        "AWS": "*"
      },
      "Action": "events:PutEvents",
      "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/CrossRegionBus",
      "Condition": {
        "ArnEquals": {
          "aws:SourceArn": [
            "arn:aws:events:us-west-2:*:*"
          ]
        }
      }
    }
  ]
}
```

------

# Eventos na Amazon EventBridge
<a name="eb-events"></a>

Um *evento* indica uma alteração em um ambiente, como um ambiente da AWS , um serviço ou uma aplicação de parceiro de SaaS ou uma das suas próprias aplicações ou serviços personalizados. A seguir estão os exemplos de eventos.
+ O Amazon EC2 gera um evento quando o estado de uma instância muda, como de pendente para em execução.
+ AWS CloudFormation gera um evento ao criar, atualizar ou excluir uma pilha.
+ AWS CloudTrail publica eventos quando você faz chamadas de API.

Você também pode configurar eventos programados a serem gerados periodicamente. 

Os eventos são representados como objetos JSON e todos têm uma estrutura semelhante e os mesmos campos de nível superior. Para obter mais informações, consulte [Estrutura](https://docs.aws.amazon.com/eventbridge/latest/ref/welcome.html#overiew-event-structure) de *EventBridge eventos na Referência de eventos*.

## Eventos de AWS serviços
<a name="eb-service-event"></a>

Muitos AWS serviços geram eventos que EventBridge recebem. Quando um AWS serviço na sua conta envia um evento para EventBridge, ele vai para o barramento de eventos padrão da sua conta.

Para obter uma lista dos AWS serviços para EventBridge os quais enviam eventos e os eventos que eles enviam, consulte a [Referência de EventBridge eventos](https://docs.aws.amazon.com/eventbridge/latest/ref/welcome.html).

AWS os serviços enviam eventos EventBridge de *forma *duradoura* ou com o melhor esforço*. Para obter mais informações, consulte [Nível de entrega do evento](https://docs.aws.amazon.com/eventbridge/latest/ref/welcome.html#event-delivery-level) na *Referência de EventBridge eventos*.

 O seguinte vídeo explica os conceitos básicos dos eventos:




 O vídeo a seguir mostra como os eventos acontecem EventBridge:




# Envio de eventos com `PutEvents` a Amazon EventBridge
<a name="eb-putevents"></a>

A `PutEvents` ação envia vários [eventos](eb-events.md) EventBridge em uma única solicitação. Para obter mais informações, consulte [PutEvents](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutEvents.html)na *Amazon EventBridge API Reference* e [put-events](https://docs.aws.amazon.com/cli/latest/reference/events/put-events.html) na *AWS CLI Command* Reference.

Cada solicitação `PutEvents` pode oferecer suporte a um número limitado de entradas. Para obter mais informações, consulte [EventBridge Cotas da Amazon](eb-quota.md). A operação `PutEvents` tenta processar todas as entradas na ordem natural da solicitação. Depois de ligar`PutEvents`, EventBridge atribua a cada evento uma ID exclusiva.

O exemplo de código Java a seguir envia dois eventos idênticos para EventBridge.

------
#### [ AWS SDK for Java Version 2.x ]

```
EventBridgeClient eventBridgeClient =
    EventBridgeClient.builder().build();

PutEventsRequestEntry requestEntry = PutEventsRequestEntry.builder()
    .resources("resource1", "resource2")
    .source("com.mycompany.myapp")
    .detailType("myDetailType")
    .detail("{ \"key1\": \"value1\", \"key2\": \"value2\" }")
    .build();

List <
PutEventsRequestEntry > requestEntries = new ArrayList <
PutEventsRequestEntry > ();
requestEntries.add(requestEntry);

PutEventsRequest eventsRequest = PutEventsRequest.builder()
    .entries(requestEntries)
    .build();

PutEventsResponse result = eventBridgeClient.putEvents(eventsRequest);

for (PutEventsResultEntry resultEntry: result.entries()) {
    if (resultEntry.eventId() != null) {
        System.out.println("Event Id: " + resultEntry.eventId());
    } else {
        System.out.println("PutEvents failed with Error Code: " + resultEntry.errorCode());
    }
}
```

------
#### [ AWS SDK for Java Version 1.0 ]

```
EventBridgeClient eventBridgeClient =
    EventBridgeClient.builder().build();
    
PutEventsRequestEntry requestEntry = new PutEventsRequestEntry()
        .withTime(new Date())
        .withSource("com.mycompany.myapp")
        .withDetailType("myDetailType")
        .withResources("resource1", "resource2")
        .withDetail("{ \"key1\": \"value1\", \"key2\": \"value2\" }");

PutEventsRequest request = new PutEventsRequest()
        .withEntries(requestEntry, requestEntry);

PutEventsResult result = awsEventsClient.putEvents(request);

for (PutEventsResultEntry resultEntry : result.getEntries()) {
    if (resultEntry.getEventId() != null) {
        System.out.println("Event Id: " + resultEntry.getEventId());
    } else {
        System.out.println("Injection failed with Error Code: " + resultEntry.getErrorCode());
    }
}
```

------

Depois de executar esse código, o resultado `PutEvents` inclui uma matriz de entradas de resposta. Cada entrada na matriz de resposta corresponde diretamente com uma entrada na matriz em ordem, do início ao fim da solicitação e da resposta. A matriz `Entries` de resposta sempre inclui o mesmo número de entradas que a solicitação.

## Como lidar com falhas com `PutEvents`
<a name="eb-failure-handling"></a>

Por padrão, se uma entrada individual em uma solicitação falhar, EventBridge continuará processando o restante das entradas na solicitação. Uma matriz `Entries` de respostas pode incluir entradas com e sem êxito. É preciso detectar entradas processadas sem êxito e incluí-las em uma chamada subsequente.

As entradas de resultados com êxito incluem um valor `Id`, e as entradas de resultados sem êxito incluem valores `ErrorCode` e `ErrorMessage`. `ErrorCode`descreve o tipo de erro. `ErrorMessage` fornece mais informações sobre o erro. O exemplo a seguir tem três entradas de resultado de uma solicitação `PutEvents`. A segunda entrada não teve êxito.

```
{
    "FailedEntryCount": 1, 
    "Entries": [
        {
            "EventId": "11710aed-b79e-4468-a20b-bb3c0c3b4860"
        },
        {   "ErrorCode": "InternalFailure",
            "ErrorMessage": "Internal Service Failure"
        },
        {
            "EventId": "d804d26a-88db-4b66-9eaf-9a11c708ae82"
        }
    ]
}
```

**nota**  
Se você costuma `PutEvents` publicar um evento em um barramento de eventos que não existe, a correspondência de EventBridge eventos não encontrará uma regra correspondente e cancelará o evento. Embora EventBridge envie uma `200` resposta, ela não falhará na solicitação nem incluirá o evento no `FailedEntryCount` valor da resposta da solicitação.

É possível incluir as entradas que foram processadas sem êxito nas solicitações `PutEvents` subsequentes. Primeiro, para descobrir se há entradas com falha na solicitação, verifique o parâmetro `FailedRecordCount` em `PutEventsResult`. Se não for zero, cada `Entry` tenha um `ErrorCode` poderá ser adicionada, que não seja nula a uma solicitação subsequente. O exemplo a seguir mostra um manipulador com falha.

```
PutEventsRequestEntry requestEntry = new PutEventsRequestEntry()
        .withTime(new Date())
        .withSource("com.mycompany.myapp")
        .withDetailType("myDetailType")
        .withResources("resource1", "resource2")
        .withDetail("{ \"key1\": \"value1\", \"key2\": \"value2\" }");

List<PutEventsRequestEntry> putEventsRequestEntryList = new ArrayList<>();
for (int i = 0; i < 3; i++) {
    putEventsRequestEntryList.add(requestEntry);
}

PutEventsRequest putEventsRequest = new PutEventsRequest();
putEventsRequest.withEntries(putEventsRequestEntryList);
PutEventsResult putEventsResult = awsEventsClient.putEvents(putEventsRequest);

while (putEventsResult.getFailedEntryCount() > 0) {
    final List<PutEventsRequestEntry> failedEntriesList = new ArrayList<>();
    final List<PutEventsResultEntry> PutEventsResultEntryList = putEventsResult.getEntries();
    for (int i = 0; i < PutEventsResultEntryList.size(); i++) {
        final PutEventsRequestEntry putEventsRequestEntry = putEventsRequestEntryList.get(i);
        final PutEventsResultEntry putEventsResultEntry = PutEventsResultEntryList.get(i);
        if (putEventsResultEntry.getErrorCode() != null) {
            failedEntriesList.add(putEventsRequestEntry);
        }
    }
    putEventsRequestEntryList = failedEntriesList;
    putEventsRequest.setEntries(putEventsRequestEntryList);
    putEventsResult = awsEventsClient.putEvents(putEventsRequest);
    }
```

## Enviando eventos usando o AWS CLI
<a name="eb-send-events-aws-cli"></a>

Você pode usar o AWS CLI para enviar eventos personalizados para EventBridge que eles possam ser processados. O exemplo a seguir coloca um evento personalizado em EventBridge:

```
aws events put-events \
--entries '[{"Time": "2016-01-14T01:02:03Z", "Source": "com.mycompany.myapp", "Resources": ["resource1", "resource2"], "DetailType": "myDetailType", "Detail": "{ \"key1\": \"value1\", \"key2\": \"value2\" }"}]'
```

Também é possível criar um arquivo JSON que contenha eventos personalizados.

```
[
  {
    "Time": "2016-01-14T01:02:03Z",
    "Source": "com.mycompany.myapp",
    "Resources": [
      "resource1",
      "resource2"
    ],
    "DetailType": "myDetailType",
    "Detail": "{ \"key1\": \"value1\", \"key2\": \"value2\" }"
  }
]
```

Em seguida, para usar o AWS CLI para ler as entradas desse arquivo e enviar eventos, em um prompt de comando, digite:

```
aws events put-events --entries file://entries.json
```

## Calculando o tamanho da entrada do PutEvents evento
<a name="eb-putevent-size"></a>

Ao enviar eventos personalizados para EventBridge usar a `PutEvents` ação, você pode agrupar até 10 entradas de eventos em uma solicitação de eficiência. O tamanho total da solicitação, ou seja, a soma de todas as entradas de eventos na solicitação, deve ser menor que 1 MB. Esse limite se aplica à solicitação como um todo, não às entradas individuais. Um único evento pode usar até 1 MB completo se for a única entrada na solicitação. Também é possível calcular o tamanho da entrada antes de enviar os eventos.



**nota**  
O limite de tamanho é imposto na *entrada*. Mesmo que a entrada seja menor que o limite de tamanho, o *evento* em EventBridge é sempre maior que o tamanho da entrada devido aos caracteres e chaves necessários da representação JSON do evento. Para obter mais informações, consulte [Eventos na Amazon EventBridge](eb-events.md).

EventBridge calcula o `PutEventsRequestEntry` tamanho da seguinte forma:
+ Se o parâmetro `Time` for especificado, ele será medido como 14 bytes.
+ Os parâmetros `Source` e `DetailType` são o número de bytes para seus formulários codificados em UTF-8.
+ Se o parâmetro `Detail` for especificado, ele será medido como o número de bytes para seu formato codificado UTF-8.
+ Se o parâmetro `Resources` for especificado, cada entrada será medida como o número de bytes para seus formulários codificados UTF-8.

O código em Java de exemplo a seguir calcula o tamanho de um determinado objeto `PutEventsRequestEntry`: Para verificar se o limite de 1 MB não foi violado, você precisa realizar o cálculo de todos os eventos em uma solicitação.

```
int getSize(PutEventsRequestEntry entry) {
    int size = 0;
    if (entry.getTime() != null) {
        size += 14;
    }
    size += entry.getSource().getBytes(StandardCharsets.UTF_8).length;
    size += entry.getDetailType().getBytes(StandardCharsets.UTF_8).length;
    if (entry.getDetail() != null) {
        size += entry.getDetail().getBytes(StandardCharsets.UTF_8).length;
    }
    if (entry.getResources() != null) {
        for (String resource : entry.getResources()) {
            if (resource != null) {
                size += resource.getBytes(StandardCharsets.UTF_8).length;
            }
        }
    }
    return size;
}
```

**nota**  
Se o tamanho da entrada for maior que 1 MB, recomendamos fazer o upload do evento em um bucket do Amazon S3 e incluí-lo `Object URL` na entrada. `PutEvents`

# Como EventBridge tenta realizar eventos novamente
<a name="eb-rule-retry-policy"></a>

Às vezes, um [evento](eb-events.md) não é entregue com êxito ao [destino](eb-targets.md) especificado em uma [regra](eb-rules.md). Isso pode acontecer, por exemplo:
+ Se o recurso de destino não estiver disponível.
+ Devido às condições da rede.

Quando um evento não é entregue com sucesso a um alvo devido a erros recuperáveis, EventBridge tenta enviar o evento novamente. São definidos os tempo de tentativa e o número de tentativas nas configurações da **política de repetição** do destino. Por padrão, EventBridge tenta enviar novamente o evento por 24 horas e até 185 vezes com um [recuo exponencial e instabilidade, ou atraso *aleatório.*](https://aws.amazon.com/blogs/architecture/exponential-backoff-and-jitter/)

Se um evento não for entregue após o esgotamento de todas as tentativas, o evento será cancelado e EventBridge não continuará sendo processado.

Para evitar a perda de eventos após a tentativa de entregá-los a um destino, configure uma fila de mensagens não entregues (DLQ) para receber todos os eventos que falharam. Para obter mais informações, consulte [Usando filas de cartas mortas para processar eventos não entregues em EventBridge](eb-rule-dlq.md).

# Usando filas de cartas mortas para processar eventos não entregues em EventBridge
<a name="eb-rule-dlq"></a>

Para evitar a perda de eventos após eles não serem entregues a um destino, você pode configurar uma fila de mensagens não entregues (DLQ) e enviar todos os eventos que falharam para processamento posterior.

EventBridge DLQs são filas padrão do Amazon SQS EventBridge usadas para armazenar eventos que não puderam ser entregues com sucesso a um destino. Ao criar uma regra e adicionar um destino, é possível escolher se quer ou não usar uma DLQ. Ao configurar uma DLQ, é possível reter todos os eventos que não foram entregues com êxito. Em seguida, é possível resolver o problema que resultou na falha na entrega do evento e processar os eventos posteriormente.

Quando você configura uma DLQ para o destino de uma regra, EventBridge envia os eventos com invocações falhadas para a fila selecionada do Amazon SQS. 

Os erros de eventos são tratados de diferentes maneiras. Alguns eventos são descartados ou enviados para uma DLQ sem nenhuma tentativa de repetição. Por exemplo, para erros resultantes da falta de permissões para um destino, de um recurso de destino que não existe mais ou de um destino que não pode ser encontrado devido a um endereço inválido ou falha na pesquisa de DNS, nenhuma nova tentativa ocorrerá até que uma ação seja tomada para resolver o problema subjacente. EventBridge envia esses eventos diretamente para o DLQ de destino, se você tiver especificado um.

Quando a entrega de um evento falha, EventBridge publica um evento nas CloudWatch métricas da Amazon indicando que uma meta `invocation` falhou. Se você usa um DLQ, métricas adicionais são enviadas para CloudWatch incluir `InvocationsSentToDLQ` e. `InvocationsFailedToBeSentToDLQ` 

Você também pode especificar DLQs para barramentos de eventos, se você usar AWS KMS chaves gerenciadas pelo cliente para criptografar eventos em repouso. Para obter mais informações, consulte [Usando filas de mensagens mortas para capturar erros de eventos criptografados em EventBridge](eb-encryption-event-bus-dlq.md).

Cada mensagem em sua DLQ incluirá os seguintes atributos personalizados:
+ `RULE_ARN`
+ `TARGET_ARN`
+ `ERROR_CODE`

  A seguinte é uma amostra dos códigos de erro que uma DLQ pode retornar:
  + `ACTION_DECRYPTION_FAILURE`
  + `CONNECTION_FAILURE`
  + `CROSS_ACCOUNT_INGESTION_FAILED`
  + `CROSS_REGION_INGESTION_FAILED`
  + `ERROR_FROM_TARGET`
  + `EVENT_DECRYPTION_FAILURE`
  + `EVENT_ENCRYPTION_FAILURE`
  + `EVENTS_IN_BATCH_REQUEST_REJECTED`
  + `FAILED_TO_ASSUME_ROLE`
  + `INTERNAL_ERROR`
  + `INVALID_JSON`
  + `INVALID_PARAMETER`
  + `NO_PERMISSIONS`
  + `NO_RESOURCE`
  + `RESOURCE_ALREADY_EXISTS`
  + `RESOURCE_LIMIT_EXCEEDED`
  + `RESOURCE_MODIFICATION_COLLISION`
  + `RULE_DECRYPTION_FAILURE`
  + `SDK_CLIENT_ERROR`
  + `THIRD_ACCOUNT_HOP_DETECTED`
  + `THIRD_REGION_HOP_DETECTED`
  + `THROTTLING`
  + `TIMEOUT`
  + `TRANSIENT_ASSUME_ROLE`
  + `UNKNOWN`
+ `ERROR_MESSAGE`
+ `EXHAUSTED_RETRY_CONDITION`

  As seguintes condições podem ser retornadas:
  + `MaximumRetryAttempts`
  + `MaximumEventAgeInSeconds`
+ `RETRY_ATTEMPTS`

 O vídeo a seguir mostra a configuração DLQs:




**Topics**
+ [Considerações sobre o uso de uma fila de mensagens não entregues](#eb-dlq-considerations)
+ [Como conceder permissões para a fila de mensagens não entregues](#eb-dlq-perms)
+ [Como reenviar eventos de uma fila de mensagens não entregues](#eb-dlq-resend)

## Considerações sobre o uso de uma fila de mensagens não entregues
<a name="eb-dlq-considerations"></a>

Considere o seguinte ao configurar um DLQ para. EventBridge
+ Somente [filas padrão](https://docs.aws.amazon.com//AWSSimpleQueueService/latest/SQSDeveloperGuide/standard-queues.html) são compatíveis. Você não pode usar uma fila FIFO para uma entrada de DLQ. EventBridge
+ EventBridge inclui metadados de eventos e atributos de mensagem na mensagem, incluindo: o código de erro, a mensagem de erro, a condição de repetição esgotada, o ARN da regra, as tentativas de repetição e o ARN de destino. É possível usar esses valores para identificar um evento e a causa da falha.
+ Permissões para DLQs na mesma conta:
  + Se você adicionar um destino a uma regra usando o console e escolher uma fila do Amazon SQS na mesma conta, uma [política baseada em recursos](eb-use-resource-based.md) que concede EventBridge acesso à fila será anexada à fila para você.
  + Se você usar a `PutTargets` operação da EventBridge API para adicionar ou atualizar um destino para uma regra e escolher uma fila do Amazon SQS na mesma conta, deverá conceder manualmente as permissões para a fila selecionada. Para saber mais, consulte [Como conceder permissões para a fila de mensagens não entregues](#eb-dlq-perms).
+ Permissões para usar filas do Amazon SQS de uma conta diferente. AWS 
  + Se criar uma regra no console, as filas de outras contas não serão exibidas para você selecionar. É preciso fornecer o ARN para a fila na outra conta e anexar manualmente uma política baseada em recursos para conceder permissão à fila. Para saber mais, consulte [Como conceder permissões para a fila de mensagens não entregues](#eb-dlq-perms).
  + Se criar uma regra usando a API, deverá anexar manualmente uma política baseada em recursos às filas do SQS em outra conta que seja usada como fila de mensagens não entregues. Para saber mais, consulte [Como conceder permissões para a fila de mensagens não entregues](#eb-dlq-perms).
+ A fila do Amazon SQS que é usada deve estar na mesma região em que a regra foi criada.

## Como conceder permissões para a fila de mensagens não entregues
<a name="eb-dlq-perms"></a>

Para entregar eventos com sucesso à fila, é EventBridge preciso ter permissão para fazer isso. Quando você especifica uma DLQ usando o EventBridge console, as permissões são adicionadas automaticamente. Isso inclui:
+ Ao configurar uma DLQ para o destino de uma regra.
+ Quando você configura uma DLQ para um barramento de eventos em que você especificou esse EventBridge uso, use an AWS KMS chave gerenciada pelo cliente para criptografar eventos em repouso. 

  Para obter mais informações, consulte [Usando filas de mensagens mortas para capturar erros de eventos criptografados em EventBridge](eb-encryption-event-bus-dlq.md).

 Se especificar uma DLQ usando a API ou usar uma fila que esteja em uma conta diferente da AWS , deverá criar manualmente uma política baseada em recursos que conceda as permissões necessárias e anexá-la à fila.

**Exemplo de permissões de fila de mensagens não entregues do destino**

A política baseada em recursos a seguir demonstra como conceder as permissões necessárias para enviar mensagens de eventos EventBridge para uma fila do Amazon SQS. O exemplo de política EventBridge concede ao serviço permissões para usar a `SendMessage` operação para enviar mensagens para uma fila chamada "MyEventDLQ”. A fila deve estar na região us-west-2 na conta 123456789012. AWS A `Condition` instrução permite somente solicitações provenientes de uma regra chamada "MyTestRule" criada na região us-west-2 na conta 123456789012. AWS 

```
{
  "Sid": "Dead-letter queue permissions",
  "Effect": "Allow",
  "Principal": {
     "Service": "events.amazonaws.com"
  },
  "Action": "sqs:SendMessage",
  "Resource": "arn:aws:sqs:us-west-2:123456789012:MyEventDLQ",
  "Condition": {
    "ArnEquals": {
      "aws:SourceArn": "arn:aws:events:us-west-2:123456789012:rule/MyTestRule"
    }
  }
}
```

**Exemplo de permissões de fila de mensagens não entregues do barramento de eventos**

A política baseada em recursos a seguir demonstra como conceder as permissões necessárias ao especificar uma DLQ para um barramento de eventos. Nesse caso, `aws:SourceArn` especifica o ARN do barramento de eventos que envia os eventos à DLQ. Neste exemplo também, a fila deve estar na mesma região que o barramento de eventos.

```
{
  "Sid": "Dead-letter queue permissions",
  "Effect": "Allow",
  "Principal": {
     "Service": "events.amazonaws.com"
  },
  "Action": "sqs:SendMessage",
  "Resource": "arn:aws:sqs:region:account-id:queue-name",
  "Condition": {
    "ArnEquals": {
      "aws:SourceArn": "arn:aws:events:region:account-id:event-bus/event-bus-arn"
    }
  }
}
```

Para anexar a política à fila, use o console do Amazon SQS, abra a fila, escolha a **Política de acesso** e edite a política. Você também pode usar o AWS CLI Para saber mais, consulte [Permissões do Amazon SQS](eb-use-resource-based.md#eb-sqs-permissions).

## Como reenviar eventos de uma fila de mensagens não entregues
<a name="eb-dlq-resend"></a>

É possível remover mensagens de uma DLQ de duas maneiras:
+ Evite escrever a lógica de consumidor do Amazon SQS: defina sua DLQ como uma origem de evento para a função do Lambda para drenar sua DLQ.
+ Escreva a lógica de consumo do Amazon SQS — Use a API AWS , o SDK do Amazon SQS AWS CLI ou crie uma lógica de consumidor personalizada para sondar, processar e excluir as mensagens no DLQ.

# AWS eventos de serviço entregues via AWS CloudTrail
<a name="eb-service-event-cloudtrail"></a>

 AWS CloudTrail é um serviço que registra automaticamente eventos, como chamadas de AWS API. Você pode criar EventBridge regras que usem as informações de CloudTrail. Para obter mais informações sobre CloudTrail, consulte [O que é AWS CloudTrail?](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) .

CloudTrail envia os seguintes tipos de eventos para o barramento de EventBridge eventos padrão. Em cada caso, o valor `detail-type` do evento é o tipo de evento listado:
+ `AWS API Call via CloudTrail`

  Eventos que representam uma solicitação para uma API AWS de serviço público.

  Para obter mais informações, consulte [Entendendo CloudTrail os eventos](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-events.html) no *Guia AWS CloudTrail do usuário*.
+ `AWS Console Signin via CloudTrail`

  Tentativas de entrar no AWS Management Console, nos fóruns de AWS discussão e no AWS Support Center. 

  Para obter mais informações, consulte [Eventos de login do Console de gerenciamento da AWS](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-aws-console-sign-in-events.html) no *Guia do usuário do AWS CloudTrail *.
+ `AWS Console Action via CloudTrail`

  Ações que foram realizadas no console que não eram chamadas de API.

  Para obter mais informações, consulte [Eventos de login do Console de gerenciamento da AWS](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-aws-console-sign-in-events.html) no *Guia do usuário do AWS CloudTrail *.
+ `AWS Service Event via CloudTrail`

  Eventos criados por AWS serviços, mas não são acionados diretamente por uma solicitação a uma API AWS de serviço público.

  Consulte mais informações em [Eventos de serviços da AWS](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/non-api-aws-service-events.html) no *Guia do usuário do AWS CloudTrail *.
+ `AWS Insight via CloudTrail`

  Os eventos do Insights são acionados CloudTrail quando o cliente ativa o recurso CloudTrail Insight.

  Para obter mais informações, consulte [CloudTrail Insights](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-insight-details.html) no *Guia AWS CloudTrail do usuário*.

Para registrar eventos com um dos CloudTrail `detail-type` valores, você deve habilitar uma CloudTrail trilha com registro. Para obter mais informações, consulte Como [trabalhar com CloudTrail trilhas](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-trails.html) no *Guia AWS CloudTrail do usuário*.

Algumas ocorrências nos AWS serviços podem ser reportadas EventBridge tanto pelo próprio serviço quanto pelo CloudTrail. Por exemplo, uma chamada de API do Amazon EC2 que inicia uma instância gera vários eventos:
+ `EC2 Instance State-change Notification`eventos enviados diretamente do Amazon EC2 para EventBridge, quando a instância entra no `pending` e, em seguida`running`, declara. Por exemplo:

  ```
  {
      . . . 
     "detail-type":"EC2 Instance State-change Notification",
     "source":"aws.ec2",
      . . . 
     "detail":{
        "instance-id":"i-abcd1111",
        "state":"pending"
     }
  }
  ```
+ Um `AWS API Call via CloudTrail` evento enviado de CloudTrail para EventBridge que representa a própria chamada da API. Por exemplo:

  ```
  {
      . . . 
     "detail-type":"AWS API Call via CloudTrail",
     "source":"aws.ec2",
      . . . 
     ],
    "detail": {
      "eventSource": "ec2.amazonaws.com",
      "eventName": "StartInstances"
      }
  }
  ```

**nota**  
Se você usar um evento de chamada de `Put*Events` API como base para criar um padrão de evento, certifique-se de que o padrão de evento final não exceda 1 MB. O tamanho máximo de qualquer `Put*Events` solicitação é de 1 MB. Para obter mais informações, consulte [](eb-putevents.md).

Para obter mais informações sobre os serviços que CloudTrail oferecem suporte, consulte [serviços e integrações CloudTrail compatíveis](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html) no *Guia do CloudTrail usuário*.

# Recebendo eventos de gerenciamento somente para leitura dos serviços AWS
<a name="eb-service-event-cloudtrail-management"></a>

Você pode configurar regras em seu barramento de eventos padrão ou personalizado para receber *eventos de gerenciamento* somente para leitura dos AWS serviços via. CloudTrail Os eventos de gerenciamento fornecem visibilidade das operações de gerenciamento que são realizadas nos recursos AWS da sua conta. Também são conhecidas como operações de ambiente de gerenciamento. Para obter mais informações, consulte [Log de eventos de gerenciamento](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html#logging-management-events) no *Guia do usuário da CloudTrail *.

Para cada regra nos barramentos de eventos padrão ou personalizados, é possível definir o estado da regra para controlar os tipos de eventos a serem recebidos:
+ Desative a regra para que os eventos EventBridge não correspondam à regra.
+ Ative a regra para que os eventos EventBridge correspondam à regra, exceto os eventos de AWS gerenciamento somente para leitura fornecidos por meio de. CloudTrail
+ Ative a regra para que todos os eventos EventBridge correspondam à regra, *incluindo* eventos de gerenciamento somente para leitura entregues por meio de. CloudTrail

Ônibus de eventos parceiros não recebem AWS eventos.

Considere o seguinte ao decidir se deseja receber eventos de gerenciamento somente leitura:
+ Certos eventos de gerenciamento somente para leitura, como AWS Key Management Service `GetKeyPolicy` and`DescribeKey`, ou IAM `GetPolicy` and `GetRole` events, ocorrem em um volume muito maior do que os eventos de mudança típicos. 
+ Talvez você já esteja recebendo eventos de gerenciamento somente para leitura, mesmo que esses eventos não comecem com `Describe``Get`, ou. `List` Um exemplo é `TestEventPattern` de EventBridge.

  Para obter uma lista de eventos de gerenciamento somente para leitura que não aderem à convenção de `List` nomenclatura ou à `Describe` convenção de nomenclatura por AWS serviços, consulte. `Get` [Eventos de gerenciamento gerados por AWS serviços em EventBridge](eb-service-management-event-list.md)

**Para criar uma regra que receba eventos de gerenciamento somente para leitura usando a CLI AWS**
+ Utilize o comando `put-rule` para criar ou atualizar a regra, com parâmetros para:
  + Especificar se a regra pertence ao barramento de eventos padrão ou a um barramento de eventos personalizado específico
  + Definir o estado da regra como `ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS`

  `aws events put-rule --name "ruleForManagementEvents" --event-bus-name "default" --state "ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS"`

**nota**  
A habilitação de uma regra para eventos CloudWatch de gerenciamento é suportada somente por meio da AWS CLI e dos CloudFormation modelos. 

**Example**  
O exemplo a seguir ilustra como corresponder a eventos específicos. A prática recomendada é definir uma regra dedicada para corresponder eventos específicos para clareza e facilidade de edição.   
Nesse caso, a regra dedicada corresponde ao evento `AssumeRole` de gerenciamento de AWS Security Token Service.   

```
{
    "source" : [ "aws.sts" ],
    "detail-type": ["AWS API Call via CloudTrail"],
    "detail" : {
        "eventName" : ["AssumeRole"]
    }
}
```

# Eventos de gerenciamento gerados por AWS serviços em EventBridge
<a name="eb-service-management-event-list"></a>

Em geral, aqueles APIs que geram eventos de gerenciamento (ou somente leitura) começam com os verbos`Describe`, `Get` ou. `List` A tabela abaixo lista AWS os serviços e os eventos de gerenciamento que eles geram e que não seguem essa convenção de nomenclatura. Para obter mais informações sobre eventos de gerenciamento, consulte [Recebendo eventos de gerenciamento somente para leitura dos serviços AWS](eb-service-event-cloudtrail-management.md).

## Eventos de gerenciamento que não começam com `Describe`, `Get` ou `List`
<a name="eb-service-management-table-list"></a>

A tabela a seguir lista AWS os serviços e os eventos de gerenciamento que eles geram e que não seguem as convenções de nomenclatura típicas de começar com `Describe``Get`, ou. `List` 


| Serviço | Nome do evento | Tipo de evento | 
| --- | --- | --- | 
| Alexa for Business | ResolveRoom | Chamada de API | 
| Alexa for Business | SearchAddressBooks | Chamada de API | 
| Alexa for Business | SearchContacts | Chamada de API | 
| Alexa for Business | SearchDevices | Chamada de API | 
| Alexa for Business | SearchProfiles | Chamada de API | 
| Alexa for Business | SearchRooms | Chamada de API | 
| Alexa for Business | SearchSkillGroups | Chamada de API | 
| Alexa for Business | SearchUsers | Chamada de API | 
| IAM Access Analyzer | ValidatePolicy | Chamada de API | 
| AWS AdSpace Salas limpas | BatchGetSchema | Chamada de API | 
| AWS Amplify Construtor de interface | ExportComponents | Chamada de API | 
| AWS Amplify Construtor de interface | ExportForms | Chamada de API | 
| AWS Amplify Construtor de interface | ExportThemes | Chamada de API | 
|  OpenSearch Serviço Amazon | BatchGetCollection | Chamada de API | 
| Amazon API Gateway | ExportApi | Chamada de API | 
| AWS AppConfig | ValidateConfiguration | Chamada de API | 
| Amazon AppFlow | RetrieveConnectorData | Chamada de API | 
| Amazon CloudWatch Application Insights | UpdateApplicationDashboardConfiguration | Chamada de API | 
| Amazon Athena | BatchGetNamedQuery | Chamada de API | 
| Amazon Athena | BatchGetPreparedStatement | Chamada de API | 
| Amazon Athena | BatchGetQueryExecution | Chamada de API | 
| Amazon Athena | CheckQueryCompatibility | Chamada de API | 
| Amazon Athena | ExportNotebook | Chamada de API | 
| AWS Auto Scaling | AreScalableTargetsRegistered | Chamada de API | 
| AWS Auto Scaling | Testar | Chamada de API | 
| AWS Marketplace | SearchAgreements | Chamada de API | 
| AWS Backup | CreateLegalHold | Chamada de API | 
| AWS Backup | ExportBackupPlanTemplate | Chamada de API | 
| AWS Backup gateway | TestHypervisorConfiguration | Chamada de API | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentInstrumentGateway.Obter | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.DescribeMakePaymentPage | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.DescribePaymentsDashboard | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetAccountPreferences | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetAdvancePaySummary | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetAsoBulkDownload | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetBillingContactAddress | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetDocuments | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetEligiblePaymentInstruments | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetEntitiesByIds | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetFundingDocuments | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetKybcValidationStatus | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetOneTimePasswordStatus | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetPaymentHistory | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetPaymentProfileByArn | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetPaymentProfileCurrencies | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetPaymentProfiles | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetPaymentProfileServiceProviders | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetPaymentsDue | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetRemittanceInformation | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetTaxInvoiceMetadata | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetTermsAndConditionsForProgramGroup | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetTransactionsHistory | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetUnappliedFunds | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPortalService.GetUnpaidInvoices | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | AWSPaymentPreferenceGateway.Obter | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | CancelBulkDownload | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | DownloadCommercialInvoice | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | DownloadCsv | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | DownloadDoc | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | Baixar ECSVFor BillingPeriod | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | DownloadPaymentHistory | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | DownloadRegistrationDocument | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | DownloadTaxInvoice | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | FindBankRedirectPaymentInstruments | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | Encontre ECSVFor BillingPeriod | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | ValidateReportDestination | Ação do console | 
| Gerenciamento de Faturamento e Custos da AWS | VerifyChinaPaymentEligibility | Ação do console | 
| Amazon Braket | SearchCompilations | Chamada de API | 
| Amazon Braket | SearchDevices | Chamada de API | 
| Amazon Braket | SearchQuantumTasks | Chamada de API | 
| Chamados do Amazon Connect | BatchGetField | Chamada de API | 
| Chamados do Amazon Connect | SearchCases | Chamada de API | 
| Chamados do Amazon Connect | SearchRelatedItems | Chamada de API | 
| Amazon Chime | RetrieveDataExports | Chamada de API | 
| Amazon Chime | SearchChannels | Chamada de API | 
| Identidade do SDK do Amazon Chime | DeleteProfile | Evento de serviço | 
| Identidade do SDK do Amazon Chime | DeleteWorkTalkAccount | Evento de serviço | 
| AWS Salas limpas | BatchGetSchema | Chamada de API | 
| Amazon Cloud Directory | BatchRead | Chamada de API | 
| Amazon Cloud Directory | LookupPolicy | Chamada de API | 
| CloudFormation | DetectStackDrift | Chamada de API | 
| CloudFormation | DetectStackResourceDrift | Chamada de API | 
| CloudFormation | DetectStackSetDrift | Chamada de API | 
| CloudFormation | EstimateTemplateCost | Chamada de API | 
| CloudFormation | ValidateTemplate | Chamada de API | 
| AWS CloudShell | RedeemCode | Chamada de API | 
| AWS CloudTrail | LookupEvents | Chamada de API | 
| AWS CodeArtifact | ReadFromRepository | Chamada de API | 
| AWS CodeArtifact | SearchPackages | Chamada de API | 
| AWS CodeArtifact | VerifyResourcesExistForTagris | Chamada de API | 
| AWS CodeBuild | BatchGetBuildBatches | Chamada de API | 
| AWS CodeBuild | BatchGetBuilds | Chamada de API | 
| AWS CodeBuild | BatchGetProjects | Chamada de API | 
| AWS CodeBuild | BatchGetReportGroups | Chamada de API | 
| AWS CodeBuild | BatchGetReports | Chamada de API | 
| AWS CodeBuild | BatchPutCodeCoverages | Chamada de API | 
| AWS CodeBuild | BatchPutTestCases | Chamada de API | 
| AWS CodeBuild | RequestBadge | Evento de serviço | 
| AWS CodeCommit | BatchDescribeMergeConflicts | Chamada de API | 
| AWS CodeCommit | BatchGetCommits | Chamada de API | 
| AWS CodeCommit | BatchGetPullRequests | Chamada de API | 
| AWS CodeCommit | BatchGetRepositories | Chamada de API | 
| AWS CodeCommit | EvaluatePullRequestApprovalRules | Chamada de API | 
| AWS CodeCommit | GitPull | Chamada de API | 
| AWS CodeDeploy | BatchGetApplicationRevisions | Chamada de API | 
| AWS CodeDeploy | BatchGetApplications | Chamada de API | 
| AWS CodeDeploy | BatchGetDeploymentGroups | Chamada de API | 
| AWS CodeDeploy | BatchGetDeploymentInstances | Chamada de API | 
| AWS CodeDeploy | BatchGetDeployments | Chamada de API | 
| AWS CodeDeploy | BatchGetDeploymentTargets | Chamada de API | 
| AWS CodeDeploy | BatchGetOnPremisesInstances | Chamada de API | 
| Amazon CodeGuru Profiler | BatchGetFrameMetricData | Chamada de API | 
| Amazon CodeGuru Profiler | SubmitFeedback | Chamada de API | 
| AWS CodePipeline | PollForJobs | Chamada de API | 
| AWS CodePipeline | PollForThirdPartyJobs | Chamada de API | 
| CodeConnections | StartAppRegistrationHandshake | Chamada de API | 
| CodeConnections | Inicie o OAuth Handshake | Chamada de API | 
| CodeConnections | ValidateHostWebhook | Chamada de API | 
| Amazon CodeWhisperer | CreateCodeScan | Chamada de API | 
| Amazon CodeWhisperer | CreateProfile | Chamada de API | 
| Amazon CodeWhisperer | CreateUploadUrl | Chamada de API | 
| Amazon CodeWhisperer | GenerateRecommendations | Chamada de API | 
| Amazon CodeWhisperer | UpdateProfile | Chamada de API | 
| Identidade do Amazon Cognito | LookupDeveloperIdentity | Chamada de API | 
| Grupos de usuários do Amazon Cognito | AdminGetDevice | Chamada de API | 
| Grupos de usuários do Amazon Cognito | AdminGetUser | Chamada de API | 
| Grupos de usuários do Amazon Cognito | AdminListDevices | Chamada de API | 
| Grupos de usuários do Amazon Cognito | AdminListGroupsForUser | Chamada de API | 
| Grupos de usuários do Amazon Cognito | AdminListUserAuthEvents | Chamada de API | 
| Grupos de usuários do Amazon Cognito | Beta\$1Authorize\$1GET | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | Confirm\$1GET | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | ConfirmForgotPassword\$1OBTER | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | Error\$1GET | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | ForgotPassword\$1OBTER | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | IntrospectToken | Chamada de API | 
| Grupos de usuários do Amazon Cognito | Login\$1Error\$1POST | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | Login\$1GET | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | Mfa\$1GET | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | MfaOption\$1OBTER | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | ResetPassword\$1OBTER | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | Signup\$1GET | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | UserInfo\$1OBTER | Evento de serviço | 
| Grupos de usuários do Amazon Cognito | UserInfo\$1PUBLICAR | Evento de serviço | 
| Amazon Cognito Sync | BulkPublish | Chamada de API | 
| Amazon Comprehend | BatchContainsPiiEntities | Chamada de API | 
| Amazon Comprehend | BatchDetectDominantLanguage | Chamada de API | 
| Amazon Comprehend | BatchDetectEntities | Chamada de API | 
| Amazon Comprehend | BatchDetectKeyPhrases | Chamada de API | 
| Amazon Comprehend | BatchDetectPiiEntities | Chamada de API | 
| Amazon Comprehend | BatchDetectSentiment | Chamada de API | 
| Amazon Comprehend | BatchDetectSyntax | Chamada de API | 
| Amazon Comprehend | BatchDetectTargetedSentiment | Chamada de API | 
| Amazon Comprehend | ClassifyDocument | Chamada de API | 
| Amazon Comprehend | ContainsPiiEntities | Chamada de API | 
| Amazon Comprehend | DetectDominantLanguage | Chamada de API | 
| Amazon Comprehend | DetectEntities | Chamada de API | 
| Amazon Comprehend | DetectKeyPhrases | Chamada de API | 
| Amazon Comprehend | DetectPiiEntities | Chamada de API | 
| Amazon Comprehend | DetectSentiment | Chamada de API | 
| Amazon Comprehend | DetectSyntax | Chamada de API | 
| Amazon Comprehend | DetectTargetedSentiment | Chamada de API | 
| Amazon Comprehend | DetectToxicContent | Chamada de API | 
| AWS Compute Optimizer | ExportAutoScalingGroupRecommendations | Chamada de API | 
| AWS Compute Optimizer | EBSVolumeRecomendações de exportação | Chamada de API | 
| AWS Compute Optimizer | ECInstanceRecomendações de exportação | Chamada de API | 
| AWS Compute Optimizer | ECSServiceRecomendações de exportação | Chamada de API | 
| AWS Compute Optimizer | ExportLambdaFunctionRecommendations | Chamada de API | 
| AWS Compute Optimizer | RDSInstanceRecomendações de exportação | Chamada de API | 
| AWS Config | BatchGetAggregateResourceConfig | Chamada de API | 
| AWS Config | BatchGetResourceConfig | Chamada de API | 
| AWS Config | SelectAggregateResourceConfig | Chamada de API | 
| AWS Config | SelectResourceConfig | Chamada de API | 
| Amazon Connect | AdminGetEmergencyAccessToken | Chamada de API | 
| Amazon Connect | SearchQueues | Chamada de API | 
| Amazon Connect | SearchRoutingProfiles | Chamada de API | 
| Amazon Connect | SearchSecurityProfiles | Chamada de API | 
| Amazon Connect | SearchUsers | Chamada de API | 
| AWS Glue DataBrew | SendProjectSessionAction | Chamada de API | 
| AWS Data Pipeline | EvaluateExpression | Chamada de API | 
| AWS Data Pipeline | QueryObjects | Chamada de API | 
| AWS Data Pipeline | ValidatePipelineDefinition | Chamada de API | 
| AWS DataSync | VerifyResourcesExistForTagris | Chamada de API | 
| AWS DeepLens | BatchGetDevice | Chamada de API | 
| AWS DeepLens | BatchGetModel | Chamada de API | 
| AWS DeepLens | BatchGetProject | Chamada de API | 
| AWS DeepLens | CreateDeviceCertificates | Chamada de API | 
| AWS DeepRacer | AdminGetAccountConfig | Chamada de API | 
| AWS DeepRacer | AdminListAssociatedUsers | Chamada de API | 
| AWS DeepRacer | TestRewardFunction | Chamada de API | 
| AWS DeepRacer | VerifyResourcesExistForTagris | Chamada de API | 
| Amazon Detective | BatchGetGraphMemberDatasources | Chamada de API | 
| Amazon Detective | BatchGetMembershipDatasources | Chamada de API | 
| Amazon Detective | SearchGraph | Chamada de API | 
|  DevOpsGuru da Amazon | SearchInsights | Chamada de API | 
|  DevOpsGuru da Amazon | SearchOrganizationInsights | Chamada de API | 
| AWS Database Migration Service | BatchStartRecommendations | Chamada de API | 
| AWS Database Migration Service | ModifyRecommendation | Chamada de API | 
| AWS Database Migration Service | StartRecommendations | Chamada de API | 
| AWS Database Migration Service | VerifyResourcesExistForTagris | Chamada de API | 
| AWS Directory Service | VerifyTrust | Chamada de API | 
| Amazon Elastic Compute Cloud | ConfirmProductInstance | Chamada de API | 
| Amazon Elastic Compute Cloud | ReportInstanceStatus | Chamada de API | 
| Amazon Elastic Container Registry | BatchCheckLayerAvailability | Chamada de API | 
| Amazon Elastic Container Registry | BatchGetImage | Chamada de API | 
| Amazon Elastic Container Registry | BatchGetImageReferrer | Chamada de API | 
| Amazon Elastic Container Registry | BatchGetRepositoryScanningConfiguration | Chamada de API | 
| Amazon Elastic Container Registry | DryRunEvent | Evento de serviço | 
| Amazon Elastic Container Registry | PolicyExecutionEvent | Evento de serviço | 
| Amazon Elastic Container Registry Public | BatchCheckLayerAvailability | Chamada de API | 
| Amazon Elastic Container Service | DiscoverPollEndpoint | Chamada de API | 
| Amazon Elastic Container Service | FindSubfleetRoute | Chamada de API | 
| Amazon Elastic Container Service | ValidateResources | Chamada de API | 
| Amazon Elastic Container Service | VerifyTaskSetsExist | Chamada de API | 
| Amazon Elastic Kubernetes Service | AccessKubernetesApi | Chamada de API | 
| AWS Elastic Beanstalk | Verifique DNSAvailability | Chamada de API | 
| AWS Elastic Beanstalk | RequestEnvironmentInfo | Chamada de API | 
| AWS Elastic Beanstalk | RetrieveEnvironmentInfo | Chamada de API | 
| AWS Elastic Beanstalk | ValidateConfigurationSettings | Chamada de API | 
| Amazon Elastic File System | NewClientConnection | Evento de serviço | 
| Amazon Elastic File System | UpdateClientConnection | Evento de serviço | 
| Amazon Elastic Transcoder | ReadJob | Chamada de API | 
| Amazon Elastic Transcoder | ReadPipeline | Chamada de API | 
| Amazon Elastic Transcoder | ReadPreset | Chamada de API | 
| Amazon EventBridge | TestEventPattern | Chamada de API | 
| Amazon EventBridge | TestScheduleExpression | Chamada de API | 
| Amazon FinSpace API | BatchListCatalogNodesByDataset | Chamada de API | 
| Amazon FinSpace API | BatchListNodesByDataset | Chamada de API | 
| Amazon FinSpace API | BatchValidateAccess | Chamada de API | 
| Amazon FinSpace API | CreateAuditRecordsQuery | Chamada de API | 
| Amazon FinSpace API | SearchDatasets | Chamada de API | 
| Amazon FinSpace API | SearchDatasetsV | Chamada de API | 
| Amazon FinSpace API | ValidateIdToken | Chamada de API | 
| AWS Firewall Manager | DisassociateAdminAccount | Chamada de API | 
| Amazon Forecast | InvokeForecastEndpoint | Chamada de API | 
| Amazon Forecast | QueryFeature | Chamada de API | 
| Amazon Forecast | QueryForecast | Chamada de API | 
| Amazon Forecast | QueryWhatIfForecast | Chamada de API | 
| Amazon Forecast | VerifyResourcesExistForTagris | Chamada de API | 
| Amazon Fraud Detector | BatchGetVariable | Chamada de API | 
| Amazon Fraud Detector | VerifyResourcesExistForTagris | Chamada de API | 
| FreeRTOS | VerifyEmailAddress | Chamada de API | 
|  GameLift Servidores Amazon | RequestUploadCredentials | Chamada de API | 
|  GameLift Servidores Amazon | ResolveAlias | Chamada de API | 
|  GameLift Servidores Amazon | SearchGameSessions | Chamada de API | 
|  GameLift Servidores Amazon | ValidateMatchmakingRuleSet | Chamada de API | 
| Amazon GameSparks | ExportSnapshot | Chamada de API | 
| Amazon Location Service | BatchGetDevicePosition | Chamada de API | 
| Amazon Location Service | CalculateRoute | Chamada de API | 
| Amazon Location Service | CalculateRouteMatrix | Chamada de API | 
| Amazon Location Service | SearchPlaceIndexForPosition | Chamada de API | 
| Amazon Location Service | SearchPlaceIndexForSuggestions | Chamada de API | 
| Amazon Location Service | SearchPlaceIndexForText | Chamada de API | 
| Amazon Glacier | InitiateJob | Chamada de API | 
| AWS Glue | BatchGetBlueprints | Chamada de API | 
| AWS Glue | BatchGetColumnStatisticsForTable | Chamada de API | 
| AWS Glue | BatchGetCrawlers | Chamada de API | 
| AWS Glue | BatchGetCustomEntityTypes | Chamada de API | 
| AWS Glue | BatchGetDataQualityResult | Chamada de API | 
| AWS Glue | BatchGetDevEndpoints | Chamada de API | 
| AWS Glue | BatchGetJobs | Chamada de API | 
| AWS Glue | BatchGetMLTransform | Chamada de API | 
| AWS Glue | BatchGetPartition | Chamada de API | 
| AWS Glue | BatchGetTriggers | Chamada de API | 
| AWS Glue | BatchGetWorkflows | Chamada de API | 
| AWS Glue | QueryJobRuns | Chamada de API | 
| AWS Glue | QueryJobRunsAggregated | Chamada de API | 
| AWS Glue | QueryJobs | Chamada de API | 
| AWS Glue | QuerySchemaVersionMetadata | Chamada de API | 
| AWS Glue | SearchTables | Chamada de API | 
| AWS HealthLake | ReadResource | Chamada de API | 
| AWS HealthLake | SearchWithGet | Chamada de API | 
| AWS HealthLake | SearchWithPost | Chamada de API | 
| AWS Identity and Access Management | GenerateCredentialReport | Chamada de API | 
| AWS Identity and Access Management | GenerateOrganizationsAccessReport | Chamada de API | 
| AWS Identity and Access Management | GenerateServiceLastAccessedDetails | Chamada de API | 
| AWS Identity and Access Management | SimulateCustomPolicy | Chamada de API | 
| AWS Identity and Access Management | SimulatePrincipalPolicy | Chamada de API | 
| AWS Loja de identidades | IsMemberInGroups | Chamada de API | 
| AWS Autenticação do Identity Store | BatchGetSession | Chamada de API | 
| Amazon Inspector Classic | PreviewAgents | Chamada de API | 
| Amazon Inspector Classic | BatchGetAccountStatus | Chamada de API | 
| Amazon Inspector Classic | BatchGetFreeTrialInfo | Chamada de API | 
| Amazon Inspector Classic | BatchGetMember | Chamada de API | 
| Faturamento da AWS | ValidateDocumentDeliveryS3LocationInfo | Chamada de API | 
| AWS IoT | SearchIndex | Chamada de API | 
| AWS IoT | TestAuthorization | Chamada de API | 
| AWS IoT | TestInvokeAuthorizer | Chamada de API | 
| AWS IoT | ValidateSecurityProfileBehaviors | Chamada de API | 
| AWS IoT Analytics | SampleChannelData | Chamada de API | 
| AWS IoT SiteWise | GatewaysVerifyResourcesExistForTagrisInternal | Chamada de API | 
| AWS IoT Things Graph | SearchEntities | Chamada de API | 
| AWS IoT Things Graph | SearchFlowExecutions | Chamada de API | 
| AWS IoT Things Graph | SearchFlowTemplates | Chamada de API | 
| AWS IoT Things Graph | SearchSystemInstances | Chamada de API | 
| AWS IoT Things Graph | SearchSystemTemplates | Chamada de API | 
| AWS IoT Things Graph | SearchThings | Chamada de API | 
| AWS IoT TwinMaker | ExecuteQuery | Chamada de API | 
| AWS IoT Wireless | CreateNetworkAnalyzerConfiguration | Chamada de API | 
| AWS IoT Wireless | DeleteNetworkAnalyzerConfiguration | Chamada de API | 
| AWS IoT Wireless | DeregisterWirelessDevice | Chamada de API | 
| Amazon Interactive Video Service | BatchGetChannel | Chamada de API | 
| Amazon Interactive Video Service | BatchGetStreamKey | Chamada de API | 
| Amazon Kendra | BatchGetDocumentStatus | Chamada de API | 
| Amazon Kendra | Consulta | Chamada de API | 
| Amazon Managed Service for Apache Flink | DiscoverInputSchema | Chamada de API | 
| AWS Key Management Service | Decrypt | Chamada de API | 
| AWS Key Management Service | Encrypt | Chamada de API | 
| AWS Key Management Service | GenerateDataKey | Chamada de API | 
| AWS Key Management Service | GenerateDataKeyPair | Chamada de API | 
| AWS Key Management Service | GenerateDataKeyPairWithoutPlaintext | Chamada de API | 
| AWS Key Management Service | GenerateDataKeyWithoutPlaintext | Chamada de API | 
| AWS Key Management Service | GenerateMac | Chamada de API | 
| AWS Key Management Service | GenerateRandom | Chamada de API | 
| AWS Key Management Service | ReEncrypt | Chamada de API | 
| AWS Key Management Service | Sign | Chamada de API | 
| AWS Key Management Service | Verificar | Chamada de API | 
| AWS Key Management Service | VerifyMac | Chamada de API | 
| AWS Lake Formation | SearchDatabasesByLFTags | Chamada de API | 
| AWS Lake Formation | SearchTablesByLFTags | Chamada de API | 
| AWS Lake Formation | StartQueryPlanning | Chamada de API | 
| Amazon Lex | BatchCreateCustomVocabularyItem | Chamada de API | 
| Amazon Lex | BatchDeleteCustomVocabularyItem | Chamada de API | 
| Amazon Lex | BatchUpdateCustomVocabularyItem | Chamada de API | 
| Amazon Lex | DeleteCustomVocabulary | Chamada de API | 
| Amazon Lex | SearchAssociatedTranscripts | Chamada de API | 
| Amazon Lightsail | Criar GUISession AccessDetails | Chamada de API | 
| Amazon Lightsail | DownloadDefaultKeyPair | Chamada de API | 
| Amazon Lightsail | IsVpcPeered | Chamada de API | 
|  CloudWatch Registros da Amazon | FilterLogEvents | Chamada de API | 
| Amazon Macie | BatchGetCustomDataIdentifiers | Chamada de API | 
| Amazon Macie | UpdateFindingsFilter | Chamada de API | 
| AWS Elemental MediaConnect | ManagedDescribeFlow | Chamada de API | 
| AWS Elemental MediaConnect | PrivateDescribeFlowMeta | Chamada de API | 
| AWS Application Migration Service | OperationalDescribeJobLogItems | Chamada de API | 
| AWS Application Migration Service | OperationalDescribeJobs | Chamada de API | 
| AWS Application Migration Service | OperationalDescribeReplicationConfigurationTemplates | Chamada de API | 
| AWS Application Migration Service | OperationalDescribeSourceServer | Chamada de API | 
| AWS Application Migration Service | OperationalGetLaunchConfiguration | Chamada de API | 
| AWS Application Migration Service | OperationalListSourceServers | Chamada de API | 
| AWS Application Migration Service | VerifyClientRoleForMgn | Chamada de API | 
| AWS HealthOmics | VerifyResourceExists | Chamada de API | 
| AWS HealthOmics | VerifyResourcesExistForTagris | Chamada de API | 
| Amazon Polly | SynthesizeLongSpeech | Chamada de API | 
| Amazon Polly | SynthesizeSpeech | Chamada de API | 
| Amazon Polly | SynthesizeSpeechGet | Chamada de API | 
| AWS serviço que fornece redes privadas gerenciadas | Ping | Chamada de API | 
| AWS Proton | DeleteEnvironmentTemplateVersion | Chamada de API | 
| AWS Proton | DeleteServiceTemplateVersion | Chamada de API | 
| Amazon QLDB | ShowCatalog | Chamada de API | 
| Amazon Quick | GenerateEmbedUrlForAnonymousUser | Chamada de API | 
| Amazon Quick | GenerateEmbedUrlForRegisteredUser | Chamada de API | 
| Amazon Quick | QueryDatabase | Evento de serviço | 
| Amazon Quick | SearchAnalyses | Chamada de API | 
| Amazon Quick | SearchDashboards | Chamada de API | 
| Amazon Quick | SearchDataSets | Chamada de API | 
| Amazon Quick | SearchDataSources | Chamada de API | 
| Amazon Quick | SearchFolders | Chamada de API | 
| Amazon Quick | SearchGroups | Chamada de API | 
| Amazon Quick | SearchUsers | Chamada de API | 
| Amazon Relational Database Service | DownloadCompleteDBLogArquivo | Chamada de API | 
| Amazon Relational Database Service | Baixar DBLog FilePortion | Chamada de API | 
| Amazon Rekognition | CompareFaces | Chamada de API | 
| Amazon Rekognition | DetectCustomLabels | Chamada de API | 
| Amazon Rekognition | DetectFaces | Chamada de API | 
| Amazon Rekognition | DetectLabels | Chamada de API | 
| Amazon Rekognition | DetectModerationLabels | Chamada de API | 
| Amazon Rekognition | DetectProtectiveEquipment | Chamada de API | 
| Amazon Rekognition | DetectText | Chamada de API | 
| Amazon Rekognition | RecognizeCelebrities | Chamada de API | 
| Amazon Rekognition | SearchFaces | Chamada de API | 
| Amazon Rekognition | SearchFacesByImage | Chamada de API | 
| Amazon Rekognition | SearchUsers | Chamada de API | 
| Amazon Rekognition | SearchUsersByImage | Chamada de API | 
| Explorador de recursos da AWS | BatchGetView | Chamada de API | 
| Explorador de recursos da AWS | Pesquisa | Chamada de API | 
| AWS Resource Groups | SearchResources | Chamada de API | 
| AWS Resource Groups | ValidateResourceSharing | Chamada de API | 
| AWS RoboMaker | BatchDescribeSimulationJob | Chamada de API | 
| Amazon Route 53 | TesteDNSAnswer | Chamada de API | 
| Domínios do Amazon Route 53 | checkAvailabilities | Chamada de API | 
| Domínios do Amazon Route 53 | CheckDomainAvailability | Chamada de API | 
| Domínios do Amazon Route 53 | checkDomainTransferability | Chamada de API | 
| Domínios do Amazon Route 53 | CheckDomainTransferability | Chamada de API | 
| Domínios do Amazon Route 53 | isEmailReachable | Chamada de API | 
| Domínios do Amazon Route 53 | searchDomains | Chamada de API | 
| Domínios do Amazon Route 53 | sendVerificationMessage | Chamada de API | 
| Domínios do Amazon Route 53 | ViewBilling | Chamada de API | 
| Domínios do Amazon Route 53 | viewBilling | Chamada de API | 
| Amazon CloudWatch RUM | BatchGetRumMetricDefinitions | Chamada de API | 
| Amazon Simple Storage Service | echo | Chamada de API | 
| Amazon Simple Storage Service | GenerateInventory | Evento de serviço | 
|  SageMaker IA da Amazon | BatchDescribeModelPackage | Chamada de API | 
|  SageMaker IA da Amazon | DeleteModelCard | Chamada de API | 
|  SageMaker IA da Amazon | QueryLineage | Chamada de API | 
|  SageMaker IA da Amazon | RenderUiTemplate | Chamada de API | 
|  SageMaker IA da Amazon | Pesquisa | Chamada de API | 
|  EventBridge Esquemas da Amazon | ExportSchema | Chamada de API | 
|  EventBridge Esquemas da Amazon | SearchSchemas | Chamada de API | 
| Amazon SimpleDB | DomainMetadata | Chamada de API | 
| AWS Secrets Manager | ValidateResourcePolicy | Chamada de API | 
| AWS Service Catalog | ScanProvisionedProducts | Chamada de API | 
| AWS Service Catalog | SearchProducts | Chamada de API | 
| AWS Service Catalog | SearchProductsAsAdmin | Chamada de API | 
| AWS Service Catalog | SearchProvisionedProducts | Chamada de API | 
| Amazon SES | BatchGetMetricData | Chamada de API | 
| Amazon SES | TestRenderEmailTemplate | Chamada de API | 
| Amazon SES | TestRenderTemplate | Chamada de API | 
| Amazon Simple Notification Service | CheckIfPhoneNumberIsOptedOut | Chamada de API | 
| AWS SQL Workbench | BatchGetNotebookCell | Chamada de API | 
| AWS SQL Workbench | ExportNotebook | Chamada de API | 
| Amazon EC2 Systems Manager | ExecuteApi | Chamada de API | 
| AWS Systems Manager Incident Manager | DeleteContactChannel | Chamada de API | 
| Centro de Identidade do AWS IAM | IsMemberInGroup | Chamada de API | 
| Centro de Identidade do AWS IAM | SearchGroups | Chamada de API | 
| Centro de Identidade do AWS IAM | SearchUsers | Chamada de API | 
| AWS STS | AssumeRole | Chamada de API | 
| AWS STS | AssumeRoleWithSAML | Chamada de API | 
| AWS STS | AssumeRoleWithWebIdentity | Chamada de API | 
| AWS STS | DecodeAuthorizationMessage | Chamada de API | 
| AWS Configurações fiscais | BatchGetTaxExemptions | Chamada de API | 
| AWS WAFV2 | CheckCapacity | Chamada de API | 
| AWS WAFV2 | GenerateMobileSdkReleaseUrl | Chamada de API | 
| AWS Well-Architected Tool | ExportLens | Chamada de API | 
| AWS Well-Architected Tool | TagResource | Chamada de API | 
| AWS Well-Architected Tool | UntagResource | Chamada de API | 
| AWS Well-Architected Tool | UpdateGlobalSettings | Chamada de API | 
| Amazon Connect Wisdom | QueryAssistant | Chamada de API | 
| Amazon Connect Wisdom | SearchContent | Chamada de API | 
| Amazon Connect Wisdom | SearchSessions | Chamada de API | 
| Amazon WorkDocs | AbortDocumentVersionUpload | Chamada de API | 
| Amazon WorkDocs | AddUsersToGroup | Chamada de API | 
| Amazon WorkDocs | BatchGetUsers | Chamada de API | 
| Amazon WorkDocs | CheckAlias | Chamada de API | 
| Amazon WorkDocs | CompleteDocumentVersionUpload | Chamada de API | 
| Amazon WorkDocs | CreateAnnotation | Chamada de API | 
| Amazon WorkDocs | CreateComment | Chamada de API | 
| Amazon WorkDocs | CreateFeedbackRequest | Chamada de API | 
| Amazon WorkDocs | CreateFolder | Chamada de API | 
| Amazon WorkDocs | CreateGroup | Chamada de API | 
| Amazon WorkDocs | CreateShare | Chamada de API | 
| Amazon WorkDocs | CreateUser | Chamada de API | 
| Amazon WorkDocs | DeleteAnnotation | Chamada de API | 
| Amazon WorkDocs | DeleteComment | Chamada de API | 
| Amazon WorkDocs | DeleteDocument | Chamada de API | 
| Amazon WorkDocs | DeleteFeedbackRequest | Chamada de API | 
| Amazon WorkDocs | DeleteFolder | Chamada de API | 
| Amazon WorkDocs | DeleteFolderContents | Chamada de API | 
| Amazon WorkDocs | DeleteGroup | Chamada de API | 
| Amazon WorkDocs | DeleteOrganizationShare | Chamada de API | 
| Amazon WorkDocs | DeleteUser | Chamada de API | 
| Amazon WorkDocs | DownloadDocumentVersion | Chamada de API | 
| Amazon WorkDocs | DownloadDocumentVersionUnderlays | Chamada de API | 
| Amazon WorkDocs | InitiateDocumentVersionUpload | Chamada de API | 
| Amazon WorkDocs | LogoutUser | Chamada de API | 
| Amazon WorkDocs | PaginatedOrganizationActivity | Chamada de API | 
| Amazon WorkDocs | PublishAnnotations | Chamada de API | 
| Amazon WorkDocs | PublishComments | Chamada de API | 
| Amazon WorkDocs | RestoreDocument | Chamada de API | 
| Amazon WorkDocs | RestoreFolder | Chamada de API | 
| Amazon WorkDocs | SearchGroups | Chamada de API | 
| Amazon WorkDocs | SearchOrganizationUsers | Chamada de API | 
| Amazon WorkDocs | TransferUserResources | Chamada de API | 
| Amazon WorkDocs | UpdateAnnotation | Chamada de API | 
| Amazon WorkDocs | UpdateComment | Chamada de API | 
| Amazon WorkDocs | UpdateDocument | Chamada de API | 
| Amazon WorkDocs | UpdateDocumentVersion | Chamada de API | 
| Amazon WorkDocs | UpdateFolder | Chamada de API | 
| Amazon WorkDocs | UpdateGroup | Chamada de API | 
| Amazon WorkDocs | UpdateOrganization | Chamada de API | 
| Amazon WorkDocs | UpdateUser | Chamada de API | 
| Amazon WorkMail | AssumeImpersonationRole | Chamada de API | 
| Amazon WorkMail | QueryDnsRecords | Chamada de API | 
| Amazon WorkMail | SearchMembers | Chamada de API | 
| Amazon WorkMail | TestAvailabilityConfiguration | Chamada de API | 
| Amazon WorkMail | TestInboundMailFlowRules | Chamada de API | 
| Amazon WorkMail | TestOutboundMailFlowRules | Chamada de API | 

# Referência detalhada de EventBridge eventos da Amazon
<a name="event-reference"></a>

EventBridge ela própria emite os seguintes eventos. Esses eventos são enviados automaticamente para o barramento de eventos padrão, como acontece com qualquer outro AWS serviço.

Para obter as definições dos campos de metadados incluídos em todos os eventos, consulte [Metadados de evento do serviço AWS](https://docs.aws.amazon.com/eventbridge/latest/ref/events-structure.html) na *Referência de eventos*.


| Tipo de detalhe de evento | Description | 
| --- | --- | 
|   [Scheduled Event](#event-detail-scheduled-event)   |  Representa um evento programado. | 
|   [Schema Created](#event-detail-schema-created)   |  Representa a criação de um novo esquema de eventos. | 
|   [Schema Version Created](#event-detail-schema-version-created)   |  Representa a criação de uma nova versão de um esquema de eventos novo ou existente.  | 
|   [Eventos de estado da conexão](#event-detail-connection-state)   |  Representa uma mudança no estado de uma conexão.  | 
|   [Eventos do estado de destino da API](#event-detail-api-destination-state)   |  Representa uma mudança no estado de um destino de API.  | 

## Agendar eventos
<a name="event-reference-schedules"></a>

EventBridge envia os seguintes eventos de programação para o barramento de eventos padrão. Para obter mais informações, consulte [Agendador](using-eventbridge-scheduler.md).

### Scheduled Event
<a name="event-detail-scheduled-event"></a>

Representa um evento programado.

Os `detail-type` campos `source` e estão incluídos porque contêm valores específicos para EventBridge eventos. Para obter definições dos outros campos de metadados incluídos em todos os eventos, consulte [Metadados de evento do serviço AWS](https://docs.aws.amazon.com/eventbridge/latest/ref/events-structure.html) na *Referência de eventos*.

```
{
  . . .,
  "detail-type": "Scheduled Event",
  "source": "aws.events",
  . . .,
  "detail": {}
}
```

`detail-type`  <a name="scheduled-event-detail-type"></a>
Identifica o tipo de evento.  
Para esse evento, esse valor é `Scheduled Event`.  
Obrigatório: Sim

`source`  <a name="scheduled-event-source"></a>
Identifica o serviço que gerou o evento. Para eventos do EventBridge , esse valor é `aws.events`.  
Obrigatório: Sim

`detail`  <a name="scheduled-event-detail"></a>
Um objeto JSON contém informações sobre o evento. O serviço que gera o evento determina o conteúdo desse campo.  
Obrigatório: Sim  
Não há campos obrigatórios neste objeto para eventos `Scheduled Event`.

**Example Exemplo de Scheduled Event**  <a name="event-detail-scheduled-event.example"></a>

```
{
  "version": "0",
  "id": "89d1a02d-5ec7-412e-82f5-13505f849b41",
  "detail-type": "Scheduled Event",
  "source": "aws.events",
  "account": "123456789012",
  "time": "2016-12-30T18:44:49Z",
  "region": "us-east-1",
  "resources": ["arn:aws:events:us-east-1:123456789012:rule/SampleRule"],
  "detail": {}
}
```

## Eventos de registro do esquema
<a name="event-reference-schemas"></a>

EventBridge envia os seguintes eventos de registro do esquema para o barramento de eventos padrão. Para obter mais informações, consulte [](eb-schema.md).

### Schema Created
<a name="event-detail-schema-created"></a>

Representa a criação de um novo esquema.

Quando um esquema é criado, EventBridge envia um `Schema Version Created` evento `Schema Created` e um.

Os `detail-type` campos `source` e estão incluídos porque contêm valores específicos para EventBridge eventos. Para obter definições dos outros campos de metadados incluídos em todos os eventos, consulte [Metadados de evento do serviço AWS](https://docs.aws.amazon.com/eventbridge/latest/ref/events-structure.html) na *Referência de eventos*.

```
{
  . . .,
  "detail-type": "Schema Created",
  "source": "aws.schemas",
  . . .,
  "detail": {
    "SchemaName" : "String",
    "SchemaType" : "String",
    "RegistryName" : "String",
    "CreationDate" : "DateTime",
    "Version" : "Number"
  }
}
```

`detail-type`  <a name="schema-created-detail-type"></a>
Identifica o tipo de evento.  
Para esse evento, esse valor é `Schema Created`.  
Obrigatório: Sim

`source`  <a name="schema-created-source"></a>
Identifica o serviço que gerou o evento. Para eventos do EventBridge , esse valor é `aws.schemas`.  
Obrigatório: Sim

`detail`  <a name="schema-created-detail"></a>
Um objeto JSON contém informações sobre o evento. O serviço que gera o evento determina o conteúdo desse campo.  
Obrigatório: Sim  
Para esse evento, esses dados incluem:    
`SchemaName`  <a name="schema-created-schema-name"></a>
O nome do esquema.  
Obrigatório: Sim  
`SchemaType`  <a name="schema-created-schema-type"></a>
O tipo de esquema.  
Valores válidos: `OpenApi3` \$1 `JSONSchemaDraft4`  
Obrigatório: Sim  
`RegistryName`  <a name="schema-created-registry-name"></a>
O nome do registro que contém o esquema.  
Obrigatório: Sim  
`CreationDate`  <a name="schema-created-creation-date"></a>
A data em que o esquema foi criado.  
Obrigatório: Sim  
`Version`  <a name="schema-created-version"></a>
A versão do esquema.  
Para eventos `Schema Created`, esse valor sempre será `1`.  
Obrigatório: Sim

**Example Exemplo do evento Schema Created**  <a name="event-detail-schema-created.example"></a>

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "Schema Created",
  "source": "aws.schemas",
  "account": "123456789012",
  "time": "2019-05-31T21:49:54Z",
  "region": "us-east-1",
  "resources": ["arn:aws:schemas:us-east-1::schema/myRegistry/mySchema"],
  "detail": {
    "SchemaName": "mySchema",
    "SchemaType": "OpenApi3",
    "RegistryName": "myRegistry",
    "CreationDate": "2019-11-29T20:08:55Z",
    "Version": "1"
  }
}
```

### Schema Version Created
<a name="event-detail-schema-version-created"></a>

Representa a criação de uma nova versão de um esquema de eventos novo ou existente.

Quando um esquema é criado, EventBridge envia um `Schema Version Created` evento `Schema Created` e um.

Os `detail-type` campos `source` e estão incluídos porque contêm valores específicos para EventBridge eventos. Para obter definições dos outros campos de metadados incluídos em todos os eventos, consulte [Metadados de evento do serviço AWS](https://docs.aws.amazon.com/eventbridge/latest/ref/events-structure.html) na *Referência de eventos*.

```
{
  . . .,
  "detail-type": "Schema Version Created",
  "source": "aws.schemas",
  . . .,
  "detail": {
    "SchemaName" : "String",
    "SchemaType" : "String",
    "RegistryName" : "String",
    "CreationDate" : "DateTime",
    "Version" : "Number"
  }
}
```

`detail-type`  <a name="schema-version-created-detail-type"></a>
Identifica o tipo de evento.  
Para esse evento, esse valor é `Schema Version Created`.  
Obrigatório: Sim

`source`  <a name="schema-version-created-source"></a>
Identifica o serviço que gerou o evento. Para eventos do EventBridge , esse valor é `aws.schemas`.  
Obrigatório: Sim

`detail`  <a name="schema-version-created-detail"></a>
Um objeto JSON contém informações sobre o evento. O serviço que gera o evento determina o conteúdo desse campo.  
Obrigatório: Sim  
Para esse evento, esses dados incluem:    
`SchemaName`  <a name="schema-version-created-schema-name"></a>
O nome do esquema.  
Obrigatório: Sim  
`SchemaType`  <a name="schema-version-created-schema-type"></a>
O tipo de esquema.  
Valores válidos: `OpenApi3` \$1 `JSONSchemaDraft4`  
Obrigatório: Sim  
`RegistryName`  <a name="schema-version-created-registry-name"></a>
O nome do registro que contém o esquema.  
Obrigatório: Sim  
`CreationDate`  <a name="schema-version-created-creation-date"></a>
A data em que a versão do esquema foi criada.  
Obrigatório: Sim  
`Version`  <a name="schema-version-created-version"></a>
A versão do esquema.  
Obrigatório: Sim

**Example Exemplo do evento Schema Version Created**  <a name="event-detail-schema-version-created.example"></a>

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "Schema Version Created",
  "source": "aws.schemas",
  "account": "123456789012",
  "time": "2019-05-31T21:49:54Z",
  "region": "us-east-1",
  "resources": ["arn:aws:schemas:us-east-1::schema/myRegistry/mySchema"],
  "detail": {
    "SchemaName": "mySchema",
    "SchemaType": "OpenApi3",
    "RegistryName": "myRegistry",
    "CreationDate": "2019-11-29T20:08:55Z",
    "Version": "5"
  }
}
```

## Eventos de conexão
<a name="event-reference-connections"></a>

EventBridge envia os seguintes eventos de conexão para o barramento de eventos padrão. Para obter mais informações, consulte [Conexões](eb-target-connection.md).

### Eventos de estado da conexão
<a name="event-detail-connection-state"></a>

Cada um desses eventos representa uma mudança no estado de uma conexão nova ou existente.

Os `detail-type` campos `source` e estão incluídos porque contêm valores específicos para EventBridge eventos. Para obter definições dos outros campos de metadados incluídos em todos os eventos, consulte [Metadados de evento do serviço AWS](https://docs.aws.amazon.com/eventbridge/latest/ref/events-structure.html) na *Referência de eventos*.

```
{
  . . .,
  "detail-type": "Connection status",
  "source": "aws.events",
  . . .,
  "detail": {
    "ConnectionName" : "String",
    "StateReason" : "String",
    "Timestamp" : "DateTime"
  }
}
```

`detail-type`  <a name="connection-state-detail-type"></a>
Identifica o tipo de evento.  
Para esse evento, esse valor é um dos seguintes:   
+ `Connection Creation Started`
+ `Connection Update Started`
+ `Connection Deletion Started`
+ `Connection Activated`
+ `Connection Authorized`
+ `Connection Authorization Started`
+ `Connection Deauthorization Started`
+ `Connection Deauthorized`
+ `Connection Failed Connectivity`
Obrigatório: Sim

`source`  <a name="connection-state-source"></a>
Identifica o serviço que gerou o evento. Para EventBridge eventos, esse valor é`aws.events`.  
Obrigatório: Sim

`detail`  <a name="connection-state-detail"></a>
Um objeto JSON contém informações sobre o evento. O serviço que gera o evento determina o conteúdo desse campo.  
Obrigatório: Sim  
Para esse evento, esses dados incluem:    
`ConnectionName`  <a name="connection-state-connection-name"></a>
O nome da conexão.  
Obrigatório: Sim  
`StateReason`  <a name="connection-state-state-reason"></a>
O motivo pelo qual o estado da conexão mudou.  
Obrigatório: não  
`Timestamp`  <a name="connection-state-timestamp"></a>
A hora e a data em que o estado da conexão mudou.  
Obrigatório: Sim

**Example Evento do estado de conexão de exemplo**  <a name="event-detail-connection-state.example"></a>

```
{
    "version": "0",
    "id": "1d7a4ac6-a50a-745f-a331-a0d802f7badb",
    "detail-type": "Connection Creation Started",
    "source": "aws.events",
    "account": "123456789012",
    "time": "2024-10-28T09:08:20Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:events:us-east-1:123456789012:connection/sample-connection/ee7e4d52-8df0-4bed-a0d5-fa7dea43fcf8"
    ],
    "detail": {
        "ConnectionName": "sample-connection",
        "Timestamp": "2024-10-24 09:26:35 +0000 UTC"
    }
}
```

## Eventos de destino da API
<a name="event-reference-api-destinations"></a>

EventBridge envia os seguintes eventos de destino da API para o barramento de eventos padrão. Para obter mais informações, consulte [Destinos de API](eb-api-destinations.md).

### Eventos do estado de destino da API
<a name="event-detail-api-destination-state"></a>

Cada um desses eventos representa uma mudança no estado de um destino da API.

Os `detail-type` campos `source` e estão incluídos porque contêm valores específicos para EventBridge eventos. Para obter definições dos outros campos de metadados incluídos em todos os eventos, consulte [Metadados de evento do serviço AWS](https://docs.aws.amazon.com/eventbridge/latest/ref/events-structure.html) na *Referência de eventos*.

```
{
  . . .,
  "detail-type": "API Destination status",
  "source": "aws.events",
  . . .,
  "detail": {
    "ApiDestinationName" : "String",
    "Timestamp" : "DateTime"
  }
}
```

`detail-type`  <a name="api-destination-state-detail-type"></a>
Identifica o tipo de evento.  
Para esse evento, esse valor é um dos seguintes:   
+ `API Destination Activated`
+ `API Destination Deactivated`
Obrigatório: Sim

`source`  <a name="api-destination-state-source"></a>
Identifica o serviço que gerou o evento. Para EventBridge eventos, esse valor é`aws.events`.  
Obrigatório: Sim

`detail`  <a name="api-destination-state-detail"></a>
Um objeto JSON contém informações sobre o evento. O serviço que gera o evento determina o conteúdo desse campo.  
Obrigatório: Sim  
Para esse evento, esses dados incluem:    
`ApiDestinationName`  <a name="api-destination-state-connection-name"></a>
O nome do destino da API.  
Obrigatório: Sim  
`Timestamp`  <a name="api-destination-state-timestamp"></a>
A hora e a data em que o estado de destino da API mudou.  
Obrigatório: Sim

**Example Evento do estado de destino da API de exemplo**  <a name="event-detail-api-destination-state.example"></a>

```
{
    "version": "0",
    "id": "1d7a4ac6-a50a-745f-a331-a0d802f7badb",
    "detail-type": "API Destination Deactivated",
    "source": "aws.events",
    "account": "123456789012",
    "time": "2024-10-28T09:08:20Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:events:us-east-1:123456789012:api-destination/sample-api-destination/ee7e4d52-8df0-4bed-a0d5-fa7dea43fcf8"
    ],
    "detail": {
        "ApiDestinationName": "sample-api-destination",
        "Timestamp": "2024-10-24 09:26:35 +0000 UTC"
    }
}
```

# Regras na Amazon EventBridge
<a name="eb-rules"></a>

Você especifica o que EventBridge acontece com os eventos entregues em cada ônibus de eventos. Para fazer isso, você cria *regras*. Uma regra especifica quais eventos enviar para quais [destinos](eb-targets.md) para serem processados. Uma única regra pode enviar um evento para vários destinos, que são executados em paralelo.

Você pode criar dois tipos de regra: regras que correspondem aos dados do evento à medida que eles são entregues e regras que são executadas em uma programação definida. Além disso, determinados AWS serviços também podem criar e gerenciar regras em sua conta.

## Regras que correspondem aos dados do evento
<a name="eb-rules-match"></a>

Você pode criar regras que correspondam aos eventos recebidos com base nos critérios de dados do evento (chamados de *padrão de eventos*). Um padrão de evento define a estrutura do evento e os campos aos quais uma regra corresponde para iniciar a ação de destino. Se um evento corresponder aos critérios definidos no padrão do evento, ele será EventBridge enviado para o (s) alvo (s) especificado (s).

Para obter mais informações, consulte [Criação de regras na Amazon EventBridge](eb-create-rule-visual.md).

## Regras que são executadas de acordo com uma programação
<a name="eb-rules-scheduled"></a>

**nota**  
As regras programadas são um recurso antigo do EventBridge.  
EventBridgeoferece uma maneira mais flexível e poderosa de criar, executar e gerenciar tarefas agendadas centralmente, em grande escala: EventBridge Scheduler. Com o EventBridge Scheduler, você pode criar agendas usando expressões cron e rate para padrões recorrentes ou configurar invocações únicas. Você pode configurar janelas de tempo flexíveis para entregas, definir limites de novas tentativas e o tempo máximo de retenção de invocações de API com falha.   
O Scheduler é altamente personalizável e oferece escalabilidade aprimorada em relação às regras programadas, com um conjunto mais amplo de operações e serviços de API de destino. AWS Recomendamos que você use o Agendador para invocar destinos em uma programação.  
Para obter mais informações, consulte [Criar uma programação](using-eventbridge-scheduler.md#using-eventbridge-scheduler-create) o *[Guia do usuário do EventBridge Scheduler](https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html)*.

Você também pode criar regras que enviem eventos aos destinos especificados em intervalos específicos. Por exemplo, para executar periodicamente uma Lambda função, você pode criar uma regra para ser executada de acordo com uma agenda.

Para obter mais informações, consulte [Criação de uma regra programada (legada) na Amazon EventBridge](eb-create-rule-schedule.md).

## Regras gerenciadas por AWS serviços
<a name="eb-rules-managed"></a>

Além das regras que você cria, AWS os serviços podem criar e gerenciar EventBridge regras em sua AWS conta que são necessárias para determinadas funções nesses serviços. Elas são chamadas de *regras gerenciadas*. 

Quando um serviço cria uma regra gerenciada, ele também pode criar uma [política do IAM](eb-iam.md) que conceda permissões a esse serviço para criar a regra. As políticas do IAM criadas desta forma têm um escopo limitado com permissões no nível do recurso para permitir a criação apenas das regras necessárias.

É possível excluir regras gerenciadas usando a opção **Forçar exclusão**, mas elas devem ser excluídas somente se você tiver certeza de que o outro serviço não precisará mais da regra. Do contrário, excluir uma regra gerenciada faz os recursos que dependem dela deixar de funcionar.

# Criação de regras na Amazon EventBridge
<a name="eb-create-rule-visual"></a>

## Pré-requisitos
<a name="eb-create-rule-prerequisites"></a>

Antes de começar, verifique se você tem:
+ Acesso ao EventBridge console da Amazon
+ Permissões apropriadas do IAM para criar EventBridge regras
+ Compreensão básica de arquiteturas orientadas por eventos

## Visão geral do
<a name="eb-create-rule-overview"></a>

Para agir em relação aos eventos recebidos por EventBridge, você pode criar regras. Quando um evento corresponde ao padrão de evento definido em sua regra, EventBridge envia o evento para o destino especificado.

Este tópico orienta você na criação de uma regra EventBridge usada para combinar eventos à medida que eles são enviados para o barramento de eventos especificado.

A criação de EventBridge regras envolve quatro etapas principais:

1. Escolha os eventos que você deseja processar

1. Configurar a filtragem e o teste de eventos

1. Selecione e configure alvos

1. Definir as configurações da regra

## Escolha os eventos
<a name="eb-create-rule-source"></a>

Primeiro, escolha os eventos que você deseja enviar para o alvo.

**Para selecionar um evento**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação, escolha **Regras** e, em seguida, escolha **Criar regra**.

1. Na guia **Eventos**, encontre os eventos que você deseja enviar para o alvo:

   1. Escolha **Eventos AWS de serviço** ou **Eventos personalizados**.

   1. Use a caixa Pesquisar ou navegue pela lista de eventos para encontrar os eventos que você deseja enviar para o alvo.

   1. Arraste um ou mais eventos para a tela **Build** e solte-o em **Triggering** Events.

   EventBridge exibe a seção **Eventos de Acionamento**. Esta seção inclui:
   + **Eventos**, que lista o evento que você escolheu.
   + **Esquema**, que exibe o esquema do evento selecionado, se disponível.

     O **esquema** contém três guias:
     + **Árvore**: uma visualização em árvore do esquema do evento.
     + **Código**: o esquema do evento na especificação Open API ou no formato JSON.
     + **Informações**: informações gerais sobre o esquema.
   + **Evento de amostra**, que exibe uma amostra de um evento selecionado, se disponível.
   + **Padrão de evento (filtro)**, que contém um padrão de evento que seleciona todos os eventos que você escolheu.

## Filtre eventos para enviar somente o que você deseja
<a name="eb-create-rule-event-pattern-visual"></a>

Você provavelmente não desejará enviar *todos os* eventos de um tipo específico para um alvo. Você pode tornar seu padrão de evento mais específico para que ele selecione apenas eventos que contenham os atributos e valores nos quais você está interessado.

### Edite o padrão do evento (opcional)
<a name="eb-create-rule-event-pattern-steps"></a>

No painel **Acionando eventos**, você pode criar o padrão de eventos de duas maneiras:
+ Visualmente, usando a visualização em árvore **do esquema**
+ Editando diretamente o JSON no painel **Event pattern**

**Para editar o padrão do evento usando a visualização em árvore do esquema**

1. Escolha a guia **Árvore** do painel **Esquema**.

1. Adicione e edite filtros para criar o padrão do evento.

   1. Escolha o ícone de filtro ao lado do atributo que você deseja adicionar como filtro ao padrão do evento.

   1. Escolha um operador de comparação na lista suspensa.

      Para obter mais informações sobre operadores de comparação, consulte [Criação de padrões de eventos](eb-create-pattern-operators.md).

   1. Insira o valor que você deseja igualar.

   1. Clique na marca de seleção para finalizar.

   EventBridge adiciona o filtro que você criou ao JSON no painel **Event pattern**.

1. Adicione filtros adicionais até criar um padrão de evento que corresponda a todos os atributos de evento desejados.

### Teste o padrão do evento
<a name="eb-create-rule-event-pattern-test"></a>

Depois de criar um padrão de evento que corresponda a todos os atributos de evento desejados, teste para garantir que o padrão de evento funcione conforme o esperado.

#### Teste o padrão do evento (opcional)
<a name="eb-create-rule-event-pattern-test-steps"></a>

1. Escolha um evento de amostra para teste ou use o seu próprio.
   + **Use exemplos de eventos fornecidos**

     1. Escolha **Usar exemplos de eventos fornecidos**.

     1. Em **Exemplo de evento acionador**, selecione o evento a ser usado para teste na lista suspensa.
   + **Use seu próprio evento**

     1. Escolha **Usar seu próprio evento**.

        EventBridge exibe um evento genérico com um `details` elemento vazio.

     1. Edite o JSON do evento para criar o evento em relação ao qual você deseja testar seu padrão de eventos.
**dica**  
É possível usar os eventos de exemplo fornecidos como ponto de partida para criar eventos personalizados para uso em testes:  
Escolha **Usar os eventos de exemplo fornecidos**, selecione um evento em **Evento desencadeador de amostra** e escolha **Copiar**.
Escolha **Usar seu próprio evento**.
Selecione o evento inteiro na janela e cole o evento de exemplo sobre ele.
Edite o evento conforme desejado.

1. Escolha **Executar teste**.

   EventBridge exibe uma mensagem informando se o evento de teste corresponde ao padrão do evento.

## Selecione destinos
<a name="eb-create-rule-target-visual"></a>

Arraste um (e até cinco) alvos para a tela **Build** e solte-o em **Targets** para receber eventos que correspondam ao padrão de evento especificado. As metas podem incluir:
+ Outros ônibus para EventBridge eventos, no mesmo ou em outro Conta da AWS
+ EventBridge Destinos de API, incluindo parceiros de SaaS, como Salesforce
+ Uma variedade de recursos de AWS serviços, como filas do Amazon SQS ou tópicos do Amazon SNS

**Para selecionar destinos**

1. Selecione o tipo de **alvo** no painel Targets e solte-o na forma **Targets** na tela Build.

   EventBridge exibe a seção **Destino** na Construção, com as opções de configuração aplicáveis com base no tipo de alvo selecionado.
**dica**  
Se você tiver especificado mais de um alvo, selecionar a forma do alvo exibirá a seção de configuração desse alvo.

1. Configure o alvo com base no seu tipo de alvo. Para obter etapas detalhadas de configuração, consulte [EventBridge Targets](eb-targets.md).

### Personalize os dados do evento enviados para o alvo
<a name="eb-create-rule-target-transform"></a>

Se você selecionar um destino que não seja um barramento de EventBridge eventos ou um destino de EventBridge API, você tem a opção de personalizar quais dados realmente são entregues ao destino.

#### Transformar ou substituir os dados do evento enviados (opcional)
<a name="eb-create-rule-target-transform-steps"></a>

1. Na tela de design do Build, escolha o ícone **Transformação de entrada** na forma **Alvos**.

   EventBridge exibe a seção **Transformação de entrada**.

1. Em **Configuração de transformação de entrada**, escolha **Ativar**.

1. Selecione o método de transformação para escolher como você deseja personalizar o texto enviado ao destino para eventos correspondentes:
   + **Parte dos eventos correspondentes** — envia EventBridge apenas a parte especificada do evento de origem original para o destino.
   + **Constante (texto JSON)** — EventBridge envia somente o texto JSON especificado para o destino. Nenhuma parte do evento de origem original é enviada.
   + **Transformador de entrada** — Configure um transformador de entrada para personalizar o texto que você EventBridge deseja enviar ao alvo. Para obter mais informações, consulte [Transformação da entrada de destino](eb-transform-target-input.md).

## Configuração da regra do
<a name="eb-create-rule-configure"></a>

Por fim, configure e crie a regra.

**Para configurar a regra (console)**

1. Selecione **Configurar**.

1. Informe um **Nome** para a regra e, opcionalmente, uma **Descrição** para a regra.

   Uma regra não pode ter o mesmo nome de outra regra no mesmo barramento de eventos Região da AWS e no mesmo.

1. Em **Barramento de eventos**, selecione o barramento de eventos para associar com essa regra.

   Se quiser que essa regra faça a correspondência com eventos provenientes da sua conta, escolha **Barramento de eventos padrão da AWS **. Quando um AWS service (Serviço da AWS) em sua conta envia um evento, ele sempre vai para o ônibus de eventos padrão da sua conta.

1. Para habilitar a regra assim que ela for criada, em **Ativação**, habilite **Ativo**.

1. (Opcional) Insira uma ou mais tags para a regra. Para obter mais informações, consulte [Recursos de marcação na Amazon EventBridge](eb-tagging.md).

1. Escolha **Criar**.

## Próximas etapas
<a name="eb-create-rule-next-steps"></a>

Depois de criar sua regra, você pode:
+ [Monitore o desempenho das regras usando métricas](eb-monitoring.md)
+ [Teste sua regra com exemplos de eventos](eb-event-pattern-sandbox.md)
+ [Modifique os padrões de eventos conforme necessário](eb-event-patterns.md)
+ [Adicione metas adicionais às regras existentes](eb-targets.md)

## Recursos adicionais do
<a name="eb-create-rule-additional-resources"></a>

Para obter mais informações sobre EventBridge regras, consulte:
+ [EventBridge visão geral das regras](eb-rules.md)
+ [Criação de padrões de eventos](eb-event-patterns.md)
+ [EventBridge alvos](eb-targets.md)
+ [ EventBridge Regras de solução de problemas](eb-troubleshooting.md)

# Criação de regras que reagem a eventos na Amazon EventBridge
<a name="eb-create-rule-wizard"></a>

Para agir em relação aos eventos recebidos pela Amazon EventBridge, você pode criar [regras](eb-rules.md). Quando um evento corresponde ao [padrão de evento](eb-event-patterns.md) definido em sua regra, EventBridge envia o evento para o [destino](eb-targets.md) especificado e aciona a ação definida na regra.

As etapas a seguir explicam como criar uma regra EventBridge usada para combinar eventos à medida que eles são enviados para o barramento de eventos especificado.

**Topics**
+ [Defina a regra](#eb-create-rule-define)
+ [Criar o padrão de eventos](#eb-create-rule-event-pattern)
+ [Selecione destinos](#eb-create-rule-target)
+ [Configurar tags e regra de revisão](#eb-create-rule-review)

## Defina a regra
<a name="eb-create-rule-define"></a>

Primeiro, insira um nome e uma descrição para a regra para identificá-la. Também é preciso definir o barramento de eventos em que sua regra procura eventos que correspondam a um padrão de eventos.

**Para definir os detalhes da regra**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação, escolha **Regras**.

1. Escolha **Create rule**.

1. Informe um **Nome** para a regra e, opcionalmente, uma **Descrição** para a regra.

   Uma regra não pode ter o mesmo nome de outra regra no mesmo barramento de eventos Região da AWS e no mesmo.

1. Em **Barramento de eventos**, selecione o barramento de eventos para associar com essa regra. Se quiser que essa regra faça a correspondência com eventos provenientes da sua conta, escolha **Barramento de eventos padrão da AWS **. Quando um AWS service (Serviço da AWS) em sua conta emite um evento, ele sempre vai para o ônibus de eventos padrão da sua conta.

1. Em **Rule type**, escolha **Rule with an event pattern**.

1. Escolha **Próximo**.

## Criar o padrão de eventos
<a name="eb-create-rule-event-pattern"></a>

Em seguida, crie o padrão do evento. Para fazer isso, especifique a origem do evento, escolha a base para o padrão do evento e defina os atributos e valores aos quais corresponder. Também é possível gerar o padrão de evento em JSON e testá-lo em um evento de amostra.

**Para criar o padrão de eventos**

1. Em **Origem do evento**, escolha **AWS eventos ou eventos de EventBridge parceiros**.

1. (Opcional) Na seção **Eventos de amostra**, escolha um **Tipo de evento de amostra** com o qual deseja testar seu padrão de evento. 

   Os seguintes tipos de eventos estão disponíveis:
   + **AWS eventos** — Selecione entre os eventos emitidos pelo suporte Serviços da AWS.
   + **EventBridge eventos de parceiros** — selecione entre os eventos emitidos por serviços terceirizados que oferecem suporte EventBridge, como o Salesforce.
   + **Inserir o meu próprio**: insira o seu próprio evento em texto JSON.

     Você também pode usar um evento AWS ou um evento de um parceiro como ponto de partida para criar seu próprio evento personalizado.

     1. Selecione **AWS eventos ou eventos** de **EventBridge parceiros**.

     1. Use o menu suspenso **Exemplos de eventos** para selecionar o evento que deseja usar como ponto de partida para seu evento personalizado.

        EventBridge exibe o evento de amostra.

     1. Selecione **Copiar**.

     1. Selecione **Inserir meu próprio** para o **Tipo de evento**.

     1. Exclua a estrutura de eventos de amostra no painel de edição JSON e cole o evento AWS ou o evento do parceiro em seu lugar.

     1. Edite o JSON do evento para criar seu próprio evento de amostra.

1. Escolha um **Método de criação**. Você pode criar um padrão de evento a partir de um EventBridge esquema ou modelo, ou pode criar um padrão de evento personalizado.

------
#### [ Existing schema ]

   Para usar um EventBridge esquema existente para criar o padrão de evento, faça o seguinte:

   1. Na seção **Método de criação**, em **Método**, selecione **Usar esquema**.

   1. Na seção **Padrão de evento**, em **Tipo de esquema**, selecione **Selecionar esquema do registro do esquema**.

   1. Em **Registro do esquema**, escolha a caixa suspensa e insira o nome de um registro do esquema, como `aws.events`. Também é possível selecionar uma opção na lista suspensa que aparece.

   1. Em **Esquema**, escolha a caixa suspensa e insira o nome do esquema a ser usado. Por exemplo, .`aws.s3@ObjectDeleted` Também é possível selecionar uma opção na lista suspensa que aparece.

   1. Na seção **Modelos**, escolha o botão **Editar** ao lado de qualquer atributo para abrir suas propriedades. Defina os campos **Relacionamento** e **Valor** conforme necessário e escolha **Definir** para salvar o atributo.
**nota**  
Para obter informações sobre a definição de um atributo, escolha o ícone **Informações** ao lado do nome do atributo. Para obter uma referência sobre como definir propriedades de atributos em seu evento, abra a seção **Observação** da caixa de diálogo de propriedades de atributos.  
Para excluir as propriedades de um atributo, escolha o botão **Editar** para esse atributo e escolha **Limpar**.

   1. Escolha **Gerar padrão de evento em JSON** para gerar e validar seu padrão de evento como texto JSON. 

   1. (Opcional) Para testar o evento de amostra em relação ao seu padrão de teste, escolha **Padrão de teste**. 

      EventBridge exibe uma caixa de mensagem informando se o evento de amostra corresponde ao padrão do evento.

      Também é possível escolher uma das seguintes opções:
      + **Copiar**: copie o padrão do evento para a área de transferência do seu dispositivo.
      + **Aprimorar:** facilita a leitura do texto JSON adicionando quebras de linha, tabulações e espaços.

------
#### [ Custom schema ]

   Para escrever um esquema personalizado e convertê-lo em um padrão de evento, faça o seguinte:

   1. Na seção **Método de criação**, em **Método**, escolha **Usar esquema**.

   1. Na seção **Padrão de evento**, em **Tipo de esquema**, escolha **Inserir esquema**.

   1. Insira o seu esquema na caixa de texto. É preciso formatar o esquema como texto JSON válido.

   1. Na seção **Modelos**, escolha o botão **Editar** ao lado de qualquer atributo para abrir suas propriedades. Defina os campos **Relacionamento** e **Valor** conforme necessário e escolha **Definir** para salvar o atributo.
**nota**  
Para obter informações sobre a definição de um atributo, escolha o ícone **Informações** ao lado do nome do atributo. Para obter uma referência sobre como definir propriedades de atributos em seu evento, abra a seção **Observação** da caixa de diálogo de propriedades de atributos.  
Para excluir as propriedades de um atributo, escolha o botão **Editar** para esse atributo e escolha **Limpar**.

   1. Escolha **Gerar padrão de evento em JSON** para gerar e validar seu padrão de evento como texto JSON. 

   1. (Opcional) Para testar o evento de amostra em relação ao seu padrão de teste, escolha **Padrão de teste**. 

      EventBridge exibe uma caixa de mensagem informando se o evento de amostra corresponde ao padrão do evento.

      Também é possível escolher uma das seguintes opções:
      + **Copiar**: copie o padrão do evento para a área de transferência do seu dispositivo.
      + **Aprimorar:** facilita a leitura do texto JSON adicionando quebras de linha, tabulações e espaços.

------
#### [ Event pattern ]

   Para escrever um padrão de evento personalizado no formato JSON, faça o seguinte:

   1. Na seção **Método de criação**, em **Método**, escolha **Padrão personalizado (editor JSON)**.

   1. Em **Padrão de evento**, insira seu padrão de evento personalizado em texto formatado em JSON. 

   1. (Opcional) Para testar o evento de amostra em relação ao seu padrão de teste, escolha **Padrão de teste**. 

      EventBridge exibe uma caixa de mensagem informando se o evento de amostra corresponde ao padrão do evento.

      Também é possível escolher uma das seguintes opções:
      + **Copiar**: copie o padrão do evento para a área de transferência do seu dispositivo.
      + **Aprimorar:** facilita a leitura do texto JSON adicionando quebras de linha, tabulações e espaços.
      + **Formulário de padrão de evento**: abre o padrão de evento no Criador de padrões. Se o padrão não puder ser renderizado no Pattern Builder no estado em que se encontra, EventBridge avisa você antes de abrir o Pattern Builder.

------

1. Escolha **Próximo**.

## Selecione destinos
<a name="eb-create-rule-target"></a>

Escolha um ou mais destinos para receber eventos que correspondam ao padrão especificado. Os alvos podem incluir um barramento de EventBridge eventos, destinos de EventBridge API, incluindo parceiros de SaaS, como Salesforce, ou outros. AWS service (Serviço da AWS)

**Para selecionar destinos**

1. Para **Tipo de destino**, escolha um dos seguintes tipos de destino:

------
#### [ Event bus ]

   1. Selecione o **ônibus EventBridge do evento**.

   1. Escolha o barramento de eventos a ser usado como o destino.
      + Para usar um barramento de eventos da mesma forma Região da AWS que esta regra: 

        1. Selecione **Barramento de eventos na mesma conta e região**.

        1. Em **Barramento de eventos para destino**, escolha a caixa suspensa e insira o nome do barramento de eventos. Também é possível selecionar o barramento de eventos na lista suspensa.

           Para obter mais informações, consulte [Envio de eventos entre ônibus de eventos na mesma conta e região na Amazon EventBridge](eb-bus-to-bus.md).
      + Para usar um barramento de eventos em uma conta Região da AWS ou diferente, siga esta regra:

        1. Selecione **Barramento de eventos em uma conta ou região diferente**.

        1. Para **Barramento de eventos como destino**, insira o ARN do barramento de eventos que deseja usar.

           Para obter mais informações, consulte: 
           + [Envio e recebimento de eventos entre AWS contas na Amazon EventBridge](eb-cross-account.md)
           + [Envio e recebimento de eventos entre AWS regiões na Amazon EventBridge](eb-cross-region.md)

   1. Para muitos tipos de destino, o EventBridge precisa de permissões para enviar eventos ao destino. Nesses casos, EventBridge você pode criar a função do IAM necessária para que sua regra seja executada. 

      Em **Perfil de execução**, realize um dos seguintes procedimentos:
      + Para criar um novo perfil de execução para esta regra:

        1. Selecione **Criar um novo perfil para este recurso específico**.

        1. Insira um nome para essa função de execução ou use o nome gerado por EventBridge.
      + Para usar um perfil de execução existente para esta regra:

        1. Selecione **Usar perfil existente**.

        1. Insira ou selecione o nome do perfil de execução a ser usado na lista suspensa.

   1. (Opcional) Para **Configurações adicionais**, especifique qualquer uma das configurações opcionais disponíveis para seu tipo de destino:

      (Opcional) Para **fila de mensagens mortas, escolha se deseja usar uma fila** padrão do Amazon SQS como fila de mensagens mortas. EventBridge envia eventos que correspondam a essa regra para a fila de mensagens mortas se eles não forem entregues com sucesso ao destino. Faça um dos procedimentos a seguir:
      + Escolha **None** (Nenhum) para não usar uma fila de mensagens não entregues.
      + Escolha **Selecionar uma fila do Amazon SQS na conta atual da AWS para usar como a fila de mensagens não entregues** e depois selecione na lista suspensa a fila a ser usada.
      + Escolha **Selecionar uma fila do Amazon SQS em outra conta da AWS como uma fila de mensagens não entregues** e insira o ARN da fila a ser utilizada. Você deve anexar uma política baseada em recursos à fila que conceda EventBridge permissão para enviar mensagens para ela. 

        Para obter mais informações, consulte [Como conceder permissões para a fila de mensagens não entregues](eb-rule-dlq.md#eb-dlq-perms).

------
#### [ API destination ]

   1. Selecione o **destino EventBridge da API**.

   1. Escolha um destino de API novo ou existente:
      + Para usar um destino de API existente, selecione **Usar um destino de API existente**. Em seguida, selecione um destino de API na lista suspensa.
      + Para criar um novo destino de API, selecione **Criar um novo destino de API**. Em seguida, forneça os seguintes detalhes para o destino:
        + **Nome**: insira um nome para o destino. 

          Os nomes devem ser exclusivos em sua Conta da AWS. Nomes podem ter até 64 caracteres. Os caracteres válidos são **A-Z**, **a-z**, **0-9** e **.** **\$1** **-** (hífen).
        + (Opcional) **Descrição**: insira uma descrição para o destino. 

          As descrições podem ter até 512 caracteres.
        + **Endpoint de destino da API**: o endpoint de URL para o destino. 

          O URL do endpoint deve começar com **https**. É possível incluir **\$1** como um parâmetro de caminho curinga. É possível definir parâmetros de caminho a partir do atributo `HttpParameters` do destino.
        + **Método HTTP**: selecione o método HTTP usado ao invocar o endpoint.
        + (Opcional) **Limite de taxa de invocação por segundo**: insira o número máximo de invocações aceitas por segundo para este destino. 

          Este valor deve ser maior que zero. Por padrão, este valor é definido como 300.
        + **Conexão**: escolha usar uma conexão nova ou existente: 
          + Para usar uma conexão existente, selecione **Usar uma conexão existente** e selecione a conexão na lista suspensa. 
          + Para criar uma nova conexão para esse destino, selecione **Criar uma nova conexão** e defina o **nome**, o **tipo de destino** e o **tipo de autorização** da conexão. Também é possível adicionar uma **descrição** opcional para essa conexão.

   1. Para muitos tipos de destino, o EventBridge precisa de permissões para enviar eventos ao destino. Nesses casos, EventBridge você pode criar a função do IAM necessária para que sua regra seja executada. 

      Em **Perfil de execução**, realize um dos seguintes procedimentos:
      + Para criar um novo perfil de execução para esta regra:

        1. Selecione **Criar um novo perfil para este recurso específico**.

        1. Insira um nome para essa função de execução ou use o nome gerado por EventBridge.
      + Para usar um perfil de execução existente para esta regra:

        1. Selecione **Usar perfil existente**.

        1. Insira ou selecione o nome do perfil de execução a ser usado na lista suspensa.

   1. (Opcional) Para **Configurações adicionais**, especifique qualquer uma das configurações opcionais disponíveis para seu tipo de destino:

      Observe que EventBridge talvez não exiba todos os campos a seguir para um determinado AWS serviço.

      1. (Opcional) Em Configurar entrada de destino, escolha como deseja personalizar o texto enviado ao destino para eventos correspondentes. Escolha uma das seguintes opções:
         + **Eventos correspondentes** — EventBridge envia todo o evento de origem original para o destino. Esse é o padrão.
         + **Parte dos eventos correspondentes** — envia EventBridge apenas a parte especificada do evento de origem original para o destino.

           Em **Especificar a parte do evento correspondente**, especifique um caminho JSON que defina a parte do evento que você deseja enviar EventBridge para o destino.
         + **Constante (texto JSON)** — EventBridge envia somente o texto JSON especificado para o destino. Nenhuma parte do evento de origem original é enviada.

           Em **Especificar a constante em JSON**, especifique o texto JSON que você deseja enviar EventBridge para o destino em vez do evento.
         + **Transformador de entrada** — Configure um transformador de entrada para personalizar o texto que você deseja EventBridge enviar ao alvo. Para obter mais informações, consulte [Transformação EventBridge de insumos da Amazon](eb-transform-target-input.md).

           1. Selecione **Configurar transformador de entrada**.

           1. Configure o transformador de entrada seguindo as etapas em [Configurando um transformador de entrada ao criar uma regra no EventBridge](eb-transform-input-rule.md).

      1. (Opcional) Em **Política de repetição**, EventBridge especifique como tentar enviar novamente um evento para um destino após a ocorrência de um erro.
         + **Idade máxima do evento** — insira o tempo máximo (em horas, minutos e segundos) EventBridge para reter eventos não processados. O padrão é 24 horas.
         + **Tentativas de repetição** — insira o número máximo de vezes que EventBridge você deve tentar enviar novamente um evento para o destino após a ocorrência de um erro. O padrão é 185 vezes.

      1. (Opcional) Para **fila de mensagens mortas, escolha se deseja usar uma fila** padrão do Amazon SQS como fila de mensagens mortas. EventBridge envia eventos que correspondam a essa regra para a fila de mensagens mortas se eles não forem entregues com sucesso ao destino. Faça um dos procedimentos a seguir:
         + Escolha **None** (Nenhum) para não usar uma fila de mensagens não entregues.
         + Escolha **Selecionar uma fila do Amazon SQS na AWS conta atual para usar como fila de mensagens mortas e, em seguida, selecione a fila** a ser usada na lista suspensa.
         + Escolha **Selecionar uma fila do Amazon SQS em outra conta da AWS como uma fila de mensagens não entregues** e insira o ARN da fila a ser utilizada. Você deve anexar uma política baseada em recursos à fila que conceda EventBridge permissão para enviar mensagens para ela. 

           Para obter mais informações, consulte [Como conceder permissões para a fila de mensagens não entregues](eb-rule-dlq.md#eb-dlq-perms).

   Para obter mais informações, consulte [Destinos de API como alvos na Amazon EventBridge](eb-api-destinations.md).

------
#### [ AWS service (Serviço da AWS) ]

   1. Selecione **AWS service (Serviço da AWS)**.

   1. Em **Selecionar um destino**, selecione um AWS service (Serviço da AWS) para usar como destino. 

   1. Se você escolher um AWS serviço que ofereça suporte a metas entre contas, poderá selecionar uma meta na mesma conta do barramento de eventos ou em uma conta diferente.
      + Para um destino na mesma conta, para **Tipo de destino**, selecione **Destino nesta conta**.

        1. Forneça as informações solicitadas para o serviço selecionado.
**nota**  
Os campos exibidos variam de acordo com o serviço selecionado. Para obter mais informações sobre os destinos disponíveis, consulte [Alvos de barramento de eventos disponíveis no EventBridge console](eb-targets.md#eb-console-targets).

        1. Para muitos tipos de destino, o EventBridge precisa de permissões para enviar eventos ao destino. Nesses casos, EventBridge você pode criar a função do IAM necessária para que sua regra seja executada. 

           Em **Perfil de execução**, realize um dos seguintes procedimentos:
           + Para criar um novo perfil de execução para esta regra:

             1. Selecione **Criar um novo perfil para este recurso específico**.

             1. Insira um nome para essa função de execução ou use o nome gerado por EventBridge.
           + Para usar um perfil de execução existente para esta regra:

             1. Selecione **Usar perfil existente**.

             1. Insira ou selecione o nome do perfil de execução a ser usado na lista suspensa.
      + Para um alvo em uma conta diferente, em **Tipo de destino**, selecione **Alvo em outra AWS conta**.

        1. Insira o ARN do recurso de destino para o qual você deseja enviar eventos.

        1. Forneça todas as informações adicionais solicitadas para o serviço selecionado.

        1. Selecione o nome da função de execução a ser usada na lista suspensa.

   1. (Opcional) Para **Configurações adicionais**, especifique qualquer uma das configurações opcionais disponíveis para seu tipo de destino:

      1. (Opcional) Em Configurar entrada de destino, escolha como deseja personalizar o texto enviado ao destino para eventos correspondentes. Escolha uma das seguintes opções:
         + **Eventos correspondentes** — EventBridge envia todo o evento de origem original para o destino. Esse é o padrão.
         + **Parte dos eventos correspondentes** — envia EventBridge apenas a parte especificada do evento de origem original para o destino.

           Em **Especificar a parte do evento correspondente**, especifique um caminho JSON que defina a parte do evento que você deseja enviar EventBridge para o destino.
         + **Constante (texto JSON)** — EventBridge envia somente o texto JSON especificado para o destino. Nenhuma parte do evento de origem original é enviada.

           Em **Especificar a constante em JSON**, especifique o texto JSON que você deseja enviar EventBridge para o destino em vez do evento.
         + **Transformador de entrada** — Configure um transformador de entrada para personalizar o texto que você deseja EventBridge enviar ao alvo. Para obter mais informações, consulte [Transformação EventBridge de insumos da Amazon](eb-transform-target-input.md).

           1. Selecione **Configurar transformador de entrada**.

           1. Configure o transformador de entrada seguindo as etapas em [Configurando um transformador de entrada ao criar uma regra no EventBridge](eb-transform-input-rule.md).

      1. (Opcional) Em **Política de repetição**, EventBridge especifique como tentar enviar novamente um evento para um destino após a ocorrência de um erro.
         + **Idade máxima do evento** — insira o tempo máximo (em horas, minutos e segundos) EventBridge para reter eventos não processados. O padrão é 24 horas.
         + **Tentativas de repetição** — insira o número máximo de vezes que EventBridge você deve tentar enviar novamente um evento para o destino após a ocorrência de um erro. O padrão é 185 vezes.

      1. (Opcional) Para **fila de mensagens mortas, escolha se deseja usar uma fila** padrão do Amazon SQS como fila de mensagens mortas. EventBridge envia eventos que correspondam a essa regra para a fila de mensagens mortas se eles não forem entregues com sucesso ao destino. Faça um dos procedimentos a seguir:
         + Escolha **None** (Nenhum) para não usar uma fila de mensagens não entregues.
         + Escolha **Selecionar uma fila do Amazon SQS na AWS conta atual para usar como fila de mensagens mortas e, em seguida, selecione a fila** a ser usada na lista suspensa.
         + Escolha **Selecionar uma fila do Amazon SQS em outra conta da AWS como uma fila de mensagens não entregues** e insira o ARN da fila a ser utilizada. Você deve anexar uma política baseada em recursos à fila que conceda EventBridge permissão para enviar mensagens para ela. 

           Para obter mais informações, consulte [Como conceder permissões para a fila de mensagens não entregues](eb-rule-dlq.md#eb-dlq-perms).

------

1. (Opcional) Selecione **Adicionar outro destino** para adicionar outro destino a essa regra.

1. Escolha **Próximo**.

## Configurar tags e regra de revisão
<a name="eb-create-rule-review"></a>

Por fim, insira as tags desejadas para a regra, revise e crie a regra.

**Para configurar tags, revisar e criar a regra**

1. (Opcional) Insira uma ou mais tags para a regra. Para obter mais informações, consulte [Recursos de marcação na Amazon EventBridge](eb-tagging.md).

1. Escolha **Próximo**.

1. Analise os detalhes da nova regra. Para fazer mudanças a qualquer seção, escolha o botão **Editar** próximo à seção.

   Quando estiver satisfeito com os detalhes da regra, escolha **Criar regra**.

# Desativando ou excluindo uma regra na Amazon EventBridge
<a name="eb-delete-rule"></a>

Para impedir que uma [regra](eb-rules.md) processe [eventos](eb-events.md) ou seja executada de acordo com uma agenda, é possível excluir ou desativar a regra. As etapas a seguir explicam como excluir ou desativar uma EventBridge regra.

**Para excluir uma desativar uma regra**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação, escolha **Regras**.

   Em **Event bus (Barramento de eventos)**, selecione o barramento de eventos associado à regra.

1. Execute um destes procedimentos:

   1. Para excluir uma regra, selecione o botão próximo à regra e escolha **Ações**, **Excluir**, **Excluir**.

      Se a regra for uma regra gerenciada, insira o nome da regra para confirmar que se trata de uma regra gerenciada e que a exclusão pode interromper a funcionalidade no serviço que criou a regra. Para continuar, insira o nome da regra e selecione **Force delete (Forçar exclusão)**.

   1. Para desabilitar temporariamente uma regra, selecione o botão ao lado da regra e escolha **Disable (Desabilitar)**, **Disable (Desabilitar)**.

      Não é possível desabilitar uma regra gerenciada.

# Melhores práticas ao definir regras na Amazon EventBridge
<a name="eb-rules-best-practices"></a>

Abaixo estão algumas das práticas recomendadas a serem consideradas ao criar regras para seus barramentos de eventos.

## Defina um único destino para cada regra
<a name="eb-rules-best-practices-single-target"></a>

Embora você possa especificar até cinco destinos para uma determinada regra, o gerenciamento de regras é mais fácil quando você especifica um único destino para cada regra. Se mais de um destino precisar receber o mesmo conjunto de eventos, recomendamos duplicar a regra para entregar os mesmos eventos a destino diferentes. Este encapsulamento simplifica a manutenção das regras: se as necessidades dos destinos do evento divergirem com o tempo, você poderá atualizar cada regra e seu padrão de evento independentemente das outras.

## Configurar permissões de regras
<a name="eb-rules-best-practices-permissions"></a>

É possível permitir que componentes ou serviços de aplicações que consomem eventos tenham o controle do gerenciamento de suas próprias regras. Uma abordagem arquitetônica comum adotada pelos clientes é isolar esses componentes ou serviços do aplicativo usando AWS contas separadas. Para habilitar o fluxo de eventos de uma conta para outra, é preciso criar uma regra em um barramento de eventos que encaminhe eventos para um barramento de eventos em outra conta. É possível permitir que equipes ou serviços de aplicações que consomem eventos tenham o controle do gerenciamento de suas próprias regras. Isso é feito ao especificar as permissões adequadas para as contas por meio de políticas de recursos. Isto funciona em todas as contas e regiões. 

Para obter mais informações, consulte [Permissões para ônibus de eventos na Amazon EventBridge](eb-event-bus-perms.md).

Por exemplo de políticas de recursos, consulte [Padrões de design de várias contas com a Amazon EventBridge ativada](https://github.com/aws-samples/amazon-eventbridge-resource-policy-samples/tree/main/patterns) GitHub.

## Melhor desempenho de regras
<a name="eb-rules-best-practices-monitor"></a>

Monitore suas regras para garantir que elas estejam funcionando conforme o esperado:
+ Monitorar a métrica `TriggeredRules` em busca de pontos de dados ausentes ou anomalias pode ajudá-lo a detectar discrepâncias em um publicador que fez uma alteração significativa. Para obter mais informações, consulte [Monitorando a Amazon EventBridge](eb-monitoring.md). 
+ O alarme sobre anomalias ou a contagem máxima esperada também pode ajudar a detectar quando uma regra está correspondendo a novos eventos. Isto pode acontecer quando publicadores de eventos, incluindo serviços da AWS e parceiros de SaaS, introduzem novos eventos ao habilitar novos casos de uso e atributos. Quando esses novos eventos são inesperados e levam a um volume maior do que a taxa de processamento do destino downstream, podem resultar em um acúmulo de eventos. 

  Este processamento de eventos inesperados também pode levar a cobranças de cobrança indesejadas.

  Também pode acionar a limitação de regras quando a conta ultrapassa sua cota de serviço alvo agregada de invocações por segundo. EventBridge ainda tentará entregar eventos compatíveis com regras limitadas e tentar novamente por até 24 horas ou conforme descrito na política de repetição personalizada do alvo. É possível detectar e alarmar regras limitadas usando a métrica `ThrottledRules`
+ Para casos de uso de baixa latência, também é possível monitorar o uso da latência usando `IngestionToInvocationStartLatency`, que fornece uma indicação da integridade do seu barramento de eventos. Qualquer período prolongado de alta latência acima de 30 segundos pode indicar uma interrupção do serviço ou controle de utilização de regras.

# Usando AWS Serverless Application Model modelos para implantar EventBridge recursos da Amazon
<a name="eb-use-sam"></a>

Você pode criar e testar [regras](eb-rules.md) manualmente no EventBridge console, o que pode ajudar no processo de desenvolvimento à medida que você refina [os padrões de eventos](eb-event-patterns.md). No entanto, quando estiver tudo pronto para implantar sua aplicação, será mais fácil usar uma estrutura como a de [AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/what-is-sam.html) para lançar todos os seus recursos com tecnologia sem servidor de forma consistente.

Usaremos esse [aplicativo de exemplo](https://github.com/aws-samples/amazon-eventbridge-producer-consumer-example) para analisar as maneiras pelas quais você pode usar AWS SAM modelos para criar EventBridge recursos. O arquivo template.yaml neste exemplo é um AWS SAM modelo que define quatro [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html)funções e mostra duas maneiras diferentes de integrar as funções Lambda com. EventBridge

Para obter uma explicação passo a passo dessa aplicação de exemplo, consulte [Tutorial: criar uma aplicação de exemplo do Amazon EventBridge](eb-tutorial-get-started.md).

 Existem duas abordagens de uso EventBridge e AWS SAM modelos. Para integrações simples em que uma função do Lambda é invocada por uma regra, a abordagem de **Modelo combinado** é recomendada. Se você tem uma lógica de roteamento complexa ou está se conectando a recursos fora do seu AWS SAM modelo, a abordagem de **modelo separado** é a melhor escolha.

**Topics**
+ [Modelo combinado](#eb-combined-template)
+ [Modelo separado](#eb-separated-template)

## Modelo combinado
<a name="eb-combined-template"></a>

A primeira abordagem usa a `Events` propriedade para configurar a EventBridge regra. O código de exemplo a seguir define um [evento](eb-events.md) que invoca sua função do Lambda.

**nota**  
Este exemplo cria automaticamente a regra no [barramento de eventos](eb-event-bus.md) padrão, que existe em todas as AWS contas. Para associar a regra a um barramento de eventos personalizado, você pode adicionar o `EventBusName` ao modelo.

```
atmConsumerCase3Fn:
  Type: AWS::Serverless::Function
  Properties:
    CodeUri: atmConsumer/
    Handler: handler.case3Handler
    Runtime: nodejs12.x
    Events:
      Trigger:
        Type: CloudWatchEvent 
        Properties:
          Pattern:
            source:
              - custom.myATMapp
            detail-type:
              - transaction                
            detail:
              result:
                - "anything-but": "approved"
```

 Esse código YAML é equivalente a um padrão de evento no EventBridge console. No YAML, você só precisa definir o padrão do evento e criar AWS SAM automaticamente uma função do IAM com as permissões necessárias. 

## Modelo separado
<a name="eb-separated-template"></a>

Na segunda abordagem para definir uma EventBridge configuração em AWS SAM, os recursos são separados mais claramente no modelo. 

1. Primeiro, defina a função do Lambda:

   ```
   atmConsumerCase1Fn:
     Type: AWS::Serverless::Function
     Properties:
       CodeUri: atmConsumer/
       Handler: handler.case1Handler
       Runtime: nodejs12.x
   ```

1. Em seguida, defina a regra usando um recurso da `AWS::Events::Rule`. As propriedades definem o padrão do evento e também podem especificar [destinos](eb-targets.md). É possível definir explicitamente vários destinos.

   ```
   EventRuleCase1: 
     Type: AWS::Events::Rule
     Properties: 
       Description: "Approved transactions"
       EventPattern: 
         source: 
           - "custom.myATMapp"
         detail-type:
           - transaction   
         detail: 
           result: 
             - "approved"
       State: "ENABLED"
       Targets: 
         - 
           Arn: 
             Fn::GetAtt: 
               - "atmConsumerCase1Fn"
               - "Arn"
           Id: "atmConsumerTarget1"
   ```

1. Por fim, defina um `AWS::Lambda::Permission` recurso que conceda permissão EventBridge para invocar o alvo.

   ```
   PermissionForEventsToInvokeLambda: 
     Type: AWS::Lambda::Permission
     Properties: 
       FunctionName: 
         Ref: "atmConsumerCase1Fn"
       Action: "lambda:InvokeFunction"
       Principal: "events.amazonaws.com"
       SourceArn: 
         Fn::GetAtt: 
           - "EventRuleCase1"
           - "Arn"
   ```

# Gerando um AWS CloudFormation modelo a partir de uma EventBridge regra existente
<a name="rule-generate-template"></a>

AWS CloudFormation permite que você configure e gerencie seus AWS recursos em contas e regiões de forma centralizada e repetível, tratando a infraestrutura como código. CloudFormation faz isso permitindo que você crie *modelos*, que definem os recursos que você deseja provisionar e gerenciar.

EventBridge permite que você gere modelos a partir das regras existentes em sua conta, como uma ajuda para ajudá-lo a começar a desenvolver CloudFormation modelos. É possível selecionar uma única regra ou várias regras para incluir no modelo. Em seguida, você pode usar esses modelos como base para [criar pilhas](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) de recursos sob CloudFormation gerenciamento.

Para obter mais informações, CloudFormation consulte [*o Guia CloudFormation do usuário*.](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)

**nota**  
EventBridge não inclui [regras gerenciadas](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-rules.html) no modelo gerado.

Também é possível [gerar um modelo de barramento de eventos existente](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-generate-event-bus-template.html), incluindo as regras contidas no barramento de eventos.

**Para gerar um CloudFormation modelo a partir de uma ou mais regras**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação, escolha **Regras**.

1. Em **Selecionar barramento de eventos**, escolha o barramento de eventos que contém as regras que deseja incluir no modelo.

1. Em **Regras**, escolha as regras que você deseja incluir no CloudFormation modelo gerado.

   Para uma única regra, também é possível escolher o nome da regra para exibir a página de detalhes da regra.

1. Escolha **CloudFormation Modelo** e, em seguida, escolha em qual formato você EventBridge deseja gerar o modelo: **JSON** ou **YAML**.

   EventBridge exibe o modelo, gerado no formato selecionado.

1. EventBridge oferece a opção de baixar o arquivo de modelo ou copiar o modelo para a área de transferência.
   + Para baixar o arquivo de modelo, escolha **Baixar**.
   + Para copiar o modelo para a área de transferência, escolha **Copiar**.

1. Para sair do modelo, escolha **Cancelar**. 

Depois de personalizar seu CloudFormation modelo conforme necessário para seu caso de uso, você pode usá-lo para [criar pilhas](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) CloudFormation.

## Considerações ao usar CloudFormation modelos gerados pela Amazon EventBridge
<a name="eb-generate-rule-template-considerations"></a>

Considere os seguintes fatores ao usar um CloudFormation modelo que você gerou a partir de EventBridge:
+ EventBridge não inclui nenhuma senha no modelo gerado.

  É possível editar o modelo para incluir [parâmetros de modelo](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html) que permitam aos usuários especificar senhas ou outras informações confidenciais ao usar o modelo para criar ou atualizar uma pilha do CloudFormation.

  Além disso, os usuários podem usar o Secrets Manager para criar um segredo na região desejada e depois editar o modelo gerado para empregar [parâmetros dinâmicos](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html#dynamic-references-secretsmanager).
+ Os destinos no modelo gerado permanecem exatamente como foram especificados no barramento de eventos original. Isso poderá resultar em problemas entre regiões se você não editar adequadamente o modelo antes de utilizá-lo para criar pilhas em outras regiões.

  Além disso, o modelo gerado não cria os destinos downstream automaticamente.

# Metas de ônibus para eventos na Amazon EventBridge
<a name="eb-targets"></a>

Um *destino* é um recurso ou endpoint que EventBridge envia um [evento](eb-events.md) para quando o evento corresponde ao padrão de evento definido para uma [regra](eb-rules.md). **A regra processa os dados do [evento](eb-events.md) e envia as informações pertinentes ao destino. Para entregar dados do evento a um alvo, EventBridge precisa de permissão para acessar o recurso de destino. É possível definir até cinco destinos para cada regra.

Quando destinos novos são adicionados a uma regra, e essa regra associada é executada logo em seguida, destinos novos ou atualizados podem não ser invocados imediatamente. Permita um curto período para que as alterações entrem em vigor.

## Alvos de barramento de eventos disponíveis no EventBridge console
<a name="eb-console-targets"></a>

Você pode configurar os seguintes tipos de alvo para regras no EventBridge console:
+ Destinos de API

  Os destinos de API são endpoints HTTP que você pode invocar como o destino de uma regra do barramento de eventos. Quando você especifica um destino de API como alvo de regra, EventBridge invoca o endpoint HTTPS para qualquer evento que corresponda ao padrão de evento especificado na regra e, em seguida, entrega as informações do evento com a solicitação. Para obter mais informações, consulte [Destinos de API](eb-api-destinations.md).
+ Barramentos de eventos

  Você pode especificar outros barramentos de eventos como destinos para regras. Isso inclui ônibus de eventos na mesma conta ou em AWS contas diferentes.
  + [Barramentos de eventos entre contas como destinos](eb-cross-account.md)
  + [Barramentos de eventos na mesma conta como destinos](eb-bus-to-bus.md)
+ AWS serviços

  Você pode EventBridge enviar eventos para vários recursos de AWS serviço. Isso inclui:
  + [API Gateway](eb-api-gateway-target.md)
  + [AWS AppSync](target-appsync.md)
  + [Fila de trabalhos em lote](#targets-specifics-batch)
  + [CloudWatch grupo de registros](#targets-specifics-cwl)
  + [CodeBuild project](#targets-specifics-codebuild)
  + CodePipeline
  + Chamada de API `CreateSnapshot` do Amazon EBS
  + EC2 Image Builder
  + Chamada de API `RebootInstances` do EC2
  + Chamada de API `StopInstances` do EC2
  + Chamada de API `TerminateInstances` do EC2
  + [Tarefa do ECS](#targets-specifics-ecs-task)
  + Fluxo de entrega do Firehose
  + Fluxo de trabalho do Glue
  + [Plano de resposta do Incident Manager](https://docs.aws.amazon.com//incident-manager/latest/userguide/incident-creation.html#incident-tracking-auto-eventbridge)
  + Modelo de avaliação do Inspector
  + Fluxo do Kinesis
  + Função do Lambda (ASYNC)
  + [Consultas de API de dados do cluster do Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/data-api-calling-event-bridge.html) 
  + [Consultas de API de dados de grupos de trabalho do Amazon Redshift sem servidor](https://docs.aws.amazon.com/redshift/latest/mgmt/data-api-calling-event-bridge.html)
  + SageMaker Pipeline de IA
  + Tópico do Amazon SNS
  + [Filas padrão, justas e FIFO do Amazon SQS](#targets-specifics-sqs)
  + Máquina de estado do Step Functions (ASYNC)
  + Automação do Systems Manager
  + Systems Manager OpsItem
  + Run Command do Systems Manager

## Parâmetros de destino
<a name="targets-specific-parms"></a>

Alguns destinos não enviam as informações da carga do evento para o destino. Em vez disso, eles tratam o evento como um gatilho para invocar uma API específica. EventBridge usa os parâmetros do [Target](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_Target.html) para determinar o que acontece com esse alvo. Incluindo o seguinte:
+ Destinos de API

  Os dados enviados para um destino da API devem corresponder à estrutura da API. Use o objeto [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_InputTransformer.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_InputTransformer.html) para garantir que os dados estejam estruturados corretamente. Se você quiser incluir a carga útil original do evento, referencie-a no [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_InputTransformer.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_InputTransformer.html).
+ API Gateway 

  Os dados enviados para o gateway da API devem corresponder à estrutura da API. Use o objeto [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_InputTransformer.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_InputTransformer.html) para garantir que os dados estejam estruturados corretamente. Se você quiser incluir a carga útil original do evento, referencie-a no [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_InputTransformer.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_InputTransformer.html).
+ Amazon EC2 Image Builder
+ Clusters da API de dados do Amazon Redshift

  Use [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RedshiftDataParameters.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RedshiftDataParameters.html).
+ Pipelines de construção do Amazon SageMaker Runtime Model

  Use [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_SageMakerPipelineParameters.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_SageMakerPipelineParameters.html).
+ Amazon SQS fair e filas FIFO

  Use [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_SqsParameters.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_SqsParameters.html) para especificar o grupo de mensagens a ser usado como o destino.
+ Run Command do Systems Manager

  Use [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RunCommandParameters.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RunCommandParameters.html)para especificar o documento SSM e as instâncias de destino. Para obter mais informações, consulte [Systems Manager Run Command as a target](#targets-specifics-ssm-run-command).

**nota**  
EventBridge não suporta toda a sintaxe do JSON Path e a avalia em tempo de execução. A sintaxe compatível inclui:   
notação de pontos (por exemplo, `$.detail`)
traços
sublinhados
caracteres alfanuméricos
índices de matriz
curingas (\$1)
barras dianteiras

### Parâmetros dinâmicos do caminho
<a name="dynamic-path-parameters"></a>

Os parâmetros de caminho dinâmico permitem que você use a sintaxe de caminho JSON para referenciar dados de eventos em tempo de execução em vez de valores estáticos.

Você pode usar a sintaxe de caminho JSON dinâmico com parâmetros de destino para especificar caminhos JSON em vez de valores estáticos (por exemplo,). `$.detail.state`

#### Requisitos
<a name="requirements"></a>

O valor inteiro deve ser um caminho JSON, não apenas parte dele. Por exemplo:
+ ✓ Correto: `RedshiftParameters.Sql` pode ser `$.detail.state`
+ ✗ Incorreto: `RedshiftParameters.Sql` não pode ser `"SELECT * FROM $.detail.state"`

EventBridge substitui esses caminhos em tempo de execução por dados da carga útil do evento no caminho especificado.

#### Limitações
<a name="limitations"></a>

Os parâmetros do caminho dinâmico não podem referenciar valores novos ou transformados da transformação de entrada. A sintaxe do caminho JSON é igual à sintaxe de transformação de entrada. Para obter mais informações, consulte [Transformação EventBridge de entradas da Amazon](eb-transform-target-input.md).

#### Parâmetros compatíveis
<a name="supported-parameters"></a>

Você pode usar a sintaxe dinâmica em todos os campos de string, não enumerados, desses parâmetros:
+ [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_EcsParameters.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_EcsParameters.html)
+ [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_HttpParameters.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_HttpParameters.html) (exceto chaves `HeaderParameters`)
+ [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RedshiftDataParameters.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RedshiftDataParameters.html)
+ [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_SageMakerPipelineParameters.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_SageMakerPipelineParameters.html)
+ [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_SqsParameters.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_SqsParameters.html)

## Permissões
<a name="targets-permissions"></a>

Para fazer chamadas de API nos recursos que você possui, EventBridge precisa de permissões apropriadas. Especifique uma função de execução [do IAM usando o EventBridge console](eb-create-rule-wizard.md#eb-create-rule-target) ou definindo o `RoleARN` parâmetro em [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutTargets.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutTargets.html).

Por exemplo, a seguinte política define a permissão para enviar mensagens a uma fila do Amazon SQS:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "sqs:SendMessage"
            ],
            "Resource": [
                "arn:aws:sqs:us-east-1:111122223333:sqs-queue-name"
            ]
        }
    ]
}
```

------

E a seguinte política de confiança EventBridge permite assumir a função:

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "events.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

É possível invocar um endpoint do API Gateway com autorização do IAM configurada, mas o perfil é opcional se você não tiver configurado a autorização. Para obter mais informações, consulte [Amazon EventBridge e AWS Identity and Access Management](eb-iam.md).

Se outra conta estiver na mesma região e tiver concedido permissão para você, será possível enviar eventos para essa conta. 

Para obter mais informações, consulte [Envio e recebimento de eventos entre AWS contas na Amazon EventBridge](eb-cross-account.md). 

Se seu destino, como uma fila do Amazon SQS, usa criptografia AWS Key Management Service (AWS KMS), você deve incluir a seguinte seção na sua política de chaves do KMS:

```
{
  "Sid": "Allow EventBridge to use the key",
  "Effect": "Allow",
  "Principal": {
    "Service": "events.amazonaws.com"
  },
  "Action": [
    "kms:Decrypt",
    "kms:GenerateDataKey"
  ],
  "Resource": "*"
}
```

## AWS Batch filas de trabalhos como alvos
<a name="targets-specifics-batch"></a>

Alguns parâmetros AWS Batch `submitJob` podem ser configurados via [BatchParameters](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_BatchParameters.html).

Outros podem ser especificados na carga útil do evento. Se a carga útil do evento (transmitida ou via [InputTransformers](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-transform-target-input.html)) contiver as seguintes chaves, elas serão mapeadas para os parâmetros de `submitJob` [solicitação](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html#API_SubmitJob_RequestSyntax):
+ `ContainerOverrides: containerOverrides`
**nota**  
Isto inclui somente comando, ambiente, memória e vcpus
+ `DependsOn: dependsOn`
**nota**  
Isto inclui apenas jobId
+ `Parameters: parameters`

## CloudWatch Registra grupos como alvos
<a name="targets-specifics-cwl"></a>

Se você não usar um [InputTransformer](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-transform-target-input.html)com um destino de CloudWatch registros, a carga útil do evento será usada como a mensagem de registro e a origem do evento como o carimbo de data/hora. Se você usar um InputTransformer, o modelo deverá ser:

`{"timestamp":<timestamp>,"message":<message>}`

EventBridge agrupa as entradas enviadas para um fluxo de log; portanto, EventBridge pode entregar um ou vários eventos a um stream de log, dependendo do tráfego.

## CodeBuild projetos como alvos
<a name="targets-specifics-codebuild"></a>

EventBridge suporta compilações padrão e em lote como destinos. 

Se você usar um [transformador de entrada](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-transform-target-input.html) para moldar o evento de origem para corresponder à [StartBuildRequest](https://docs.aws.amazon.com/codebuild/latest/APIReference/API_StartBuild.html#API_StartBuild_RequestSyntax)estrutura antes de ser entregue a um CodeBuild alvo, os parâmetros serão mapeados de 1 a 1 e transmitidos por padrão. `codeBuild.StartBuild` 

Para passar os parâmetros para, `codeBuild.StartBuildBatch` em vez disso, transforme o evento de origem para corresponder à [StartBuildBatchRequest](https://docs.aws.amazon.com/codebuild/latest/APIReference/API_StartBuildBatch.html#API_StartBuildBatch_RequestSyntax)estrutura e adicione o seguinte key/value par à raiz do evento transformado:

`"buildType": "BATCH"`

## Tarefas do Amazon ECS como destinos
<a name="targets-specifics-ecs-task"></a>

Se você usar [InputTransformers](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-transform-target-input.html)para moldar o evento de entrada para um Target de acordo com a RunTask [TaskOverride](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_TaskOverride.html)estrutura do Amazon ECS, os parâmetros serão mapeados de 1 para 1 e transmitidos para. `ecs.RunTask`

## Planos de resposta do Incident Manager como destinos
<a name="targets-specifics-incident-manager"></a>

Se o evento correspondente veio de CloudWatch Alarmes, os detalhes da alteração do estado do alarme serão preenchidos nos detalhes do gatilho da StartIncidentRequest chamada para o Incident Manager.

## Systems Manager Run Command como alvo
<a name="targets-specifics-ssm-run-command"></a>

Quando você especifica o Systems Manager Run Command como destino, EventBridge chama a [https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_SendCommand.html](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_SendCommand.html)API em seu nome. Configure o destino usando [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RunCommandParameters.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RunCommandParameters.html), que especifica o documento SSM a ser executado e as instâncias ou tags de destino.

`RunCommandParameters`contém os seguintes campos:
+ `RunCommandTargets`— (Obrigatório) Uma lista de pares de valores-chave que especificam as instâncias de destino. Use `Key` set to `InstanceIds` com uma lista de instâncias IDs ou `Key` set to `tag:tag-name` com valores de tag para segmentar instâncias por tag. Você pode especificar entre 1 e 5 destinos de comando de execução.

Para especificar qual documento SSM executar e passar parâmetros para ele, use o `Input` campo no [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_Target.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_Target.html)objeto. O `Input` valor deve ser um objeto JSON com a seguinte estrutura:

```
{
  "DocumentName": "document-name",
  "DocumentVersion": "version",
  "Parameters": {
    "parameter-key": ["parameter-value"]
  }
}
```

Em que:
+ `DocumentName`— O nome ou ARN do documento SSM a ser executado.
+ `DocumentVersion`— (Opcional) A versão do documento. Se for omitida, a versão padrão será usada.
+ `Parameters`— (Opcional) Um mapa de nomes de parâmetros para matrizes de valores, correspondendo aos parâmetros definidos no documento SSM.

Por exemplo, o AWS CLI comando a seguir cria uma regra que executa o `AWS-RunShellScript` documento em uma instância específica quando um EventBridge evento coincide:

```
aws events put-targets --rule "my-rule" --targets '[{
  "Id": "ssm-target-1",
  "Arn": "arn:aws:ssm:region:account-id:document/AWS-RunShellScript",
  "RoleArn": "arn:aws:iam::account-id:role/EventBridgeSSMRole",
  "Input": "{\\"Parameters\\":{\\"commands\\":[\\"echo Hello from EventBridge\\"]}}",
  "RunCommandParameters": {
    "RunCommandTargets": [{
      "Key": "InstanceIds",
      "Values": ["i-0123456789abcdef0"]
    }]
  }
}]'
```

**nota**  
O `Input` campo no `Target` objeto é usado para passar o nome e os parâmetros do documento para o Systems Manager Run Command. Isso é diferente do [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_InputTransformer.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_InputTransformer.html), que transforma a carga útil do evento. Ao usar o Systems Manager Run Command como destino, defina os parâmetros do documento `Input` e especifique as instâncias de destino em`RunCommandParameters`.

## Filas do Amazon SQS como destinos
<a name="targets-specifics-sqs"></a>

EventBridge não suporta o uso de filas do Amazon SQS que são criptografadas com um. Chave pertencente à AWS Isso inclui destinos, bem como filas do Amazon SQS especificadas como filas de mensagens não entregues. Para obter mais informações sobre Chaves pertencentes à AWS, consulte [chaves AWS próprias](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk) no *Guia do AWS Key Management Service desenvolvedor*.

# O Amazon API Gateway visa regras na Amazon EventBridge
<a name="eb-api-gateway-target"></a>

Você pode usar o Amazon API Gateway para criar, publicar, manter e monitorar APIs. A Amazon EventBridge oferece suporte ao envio de eventos para um endpoint do API Gateway. Ao especificar um endpoint do API Gateway como [destino](eb-targets.md), cada [evento](eb-events.md) enviado ao destino é mapeado para uma solicitação enviada ao endpoint.

**Importante**  
EventBridge suporta o uso de endpoints *regionais* e *otimizados para o API Gateway Edge* como destinos. No momento, endpoints *privados* não são compatíveis. Para saber mais sobre os endpoints do cluster, consulte [https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-endpoint-types.html](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-endpoint-types.html).

É possível usar um destino do API Gateway para os seguintes casos de uso:
+ Para invocar uma API especificada pelo cliente hospedada no API Gateway com base em eventos de terceiros AWS ou em eventos de terceiros.
+ Para invocar um endpoint periodicamente em um cronograma.

As informações do evento EventBridge JSON são enviadas como o corpo da solicitação HTTP para o seu endpoint. É possível especificar os outros atributos da solicitação no campo `HttpParameters` do destino da seguinte forma:
+ `PathParameterValues` lista os valores que correspondem sequencialmente a qualquer variável de caminho no ARN do endpoint, por exemplo `"arn:aws:execute-api:us-east-1:112233445566:myapi/dev/POST/pets/*/*"`.
+ `QueryStringParameters`representa os parâmetros da sequência de caracteres de consulta EventBridge anexados ao endpoint invocado.
+ O `HeaderParameters` define cabeçalhos HTTP a serem adicionados à solicitação.

**nota**  
Por questões de segurança, as seguintes chaves de cabeçalho HTTP não são permitidas:  
Qualquer prexico com `X-Amz` ou `X-Amzn`
`Authorization`
`Connection`
`Content-Encoding`
`Content-Length`
`Host`
`Max-Forwards`
`TE`
`Transfer-Encoding`
`Trailer`
`Upgrade`
`Via`
`WWW-Authenticate`
`X-Forwarded-For`

## Parâmetros dinâmicos
<a name="eb-targets-apigateway-dynamic"></a>

Ao invocar um destino do API Gateway, você pode adicionar dados dinamicamente aos eventos enviados ao destino. Para obter mais informações, consulte [Parâmetros de destino](eb-targets.md#targets-specific-parms).

## Repetições de invocação
<a name="eb-targets-apigateway-retries"></a>

Como acontece com todos os alvos, EventBridge repete algumas invocações que falharam. Para o API Gateway, EventBridge tente novamente as respostas enviadas com um código de status HTTP 5xx ou 429 por até 24 horas com [recuo exponencial](https://aws.amazon.com/blogs/architecture/exponential-backoff-and-jitter/) e instabilidade. Depois disso, EventBridge publica uma `FailedInvocations` métrica na Amazon CloudWatch. EventBridge não repete outros erros HTTP 4xx.

## Timeout (Tempo limite)
<a name="eb-targets-apigateway-timeout"></a>

EventBridge As solicitações de regra do API Gateway devem ter um tempo limite máximo de execução do cliente de 5 segundos. Se o API Gateway demorar mais de 5 segundos para responder, EventBridge exceda o tempo limite da solicitação e tente novamente.

EventBridge As solicitações do Pipes API Gateway têm um tempo limite máximo de 29 segundos, o máximo do API Gateway.

# AWS AppSync metas para regras na Amazon EventBridge
<a name="target-appsync"></a>

AWS AppSync permite que os desenvolvedores conectem seus aplicativos e serviços a dados e eventos com GraphQL e GraphQL seguros, sem servidor e de alto desempenho. Pub/Sub APIs Com AWS AppSync, você pode publicar atualizações de dados em tempo real em seus aplicativos com mutações do GraphQL. EventBridge suporta a chamada de uma operação de mutação válida do GraphQL para eventos correspondentes. Quando você especifica uma mutação AWS AppSync da API como alvo, AWS AppSync processa o evento por meio de uma operação de mutação, que pode então acionar assinaturas vinculadas à mutação.

**nota**  
EventBridge suporta AWS AppSync GraphQL APIs público. EventBridge atualmente não oferece suporte para AWS AppSync Private APIs.

Você pode usar um destino da API AWS AppSync GraphQL para os seguintes casos de uso:
+ Para enviar por push, transformar e armazenar dados de eventos em suas fontes de dados configuradas.
+ Para enviar notificações em tempo real para clientes de aplicações conectados.

**nota**  
AWS AppSync os destinos suportam apenas a chamada do AWS AppSync GraphQL APIs usando o tipo de [`AWS_IAM`autorização](https://docs.aws.amazon.com/appsync/latest/devguide/security-authz.html#aws-iam-authorization).

*Para obter mais informações sobre o AWS AppSync GraphQL APIs, consulte o GraphQL [e a AWS AppSync arquitetura](https://docs.aws.amazon.com/appsync/latest/devguide/graphql-overview.html) no Guia do desenvolvedor.AWS AppSync *

**Para especificar um AWS AppSync destino para uma EventBridge regra usando o console**

1. [Crie ou edite a regra.](eb-create-rule-visual.md)

1. Em **Destino**, [especifique o destino](eb-create-rule-wizard.md#eb-create-rule-target) escolhendo o **Serviço da AWS ** e **AWS AppSync**.

1. Especifique a operação de mutação a ser analisada e executada, junto com o conjunto de seleção.
   + Escolha a AWS AppSync API e, em seguida, a mutação da API GraphQL a ser invocada.
   + Em **Configurar parâmetros e conjunto de seleção**, escolha criar um conjunto de seleção utilizando o mapeamento de chave-valor ou um transformador de entrada.

------
#### [ Key-value mapping ]

     Para utilizar o mapeamento de chave-valor para criar o conjunto de seleção:
     + Especifique as variáveis para os parâmetros da API. Cada variável pode ter um valor estático ou uma expressão dinâmica de caminho JSON para a carga útil do evento.
     + Em **Conjunto de seleção**, escolha as variáveis que deseja incluir na resposta.

------
#### [ Input transformer ]

     Para utilizar um transformador de entrada para criar o conjunto de seleção:
     + Especifique um caminho de entrada que defina as variáveis a serem utilizadas.
     + Especifique um modelo de entrada para definir e formatar as informações que deseja passar para o destino.

     Para obter mais informações, consulte [Configurando um transformador de entrada ao criar uma regra no EventBridge](eb-transform-input-rule.md).

------

1. Em **Perfil de execução**, escolha se deseja criar um perfil ou utilizar um perfil existente.

1. Conclua a criação ou a edição da regra.

## Exemplo: AWS AppSync metas para a Amazon EventBridge
<a name="target-appsync-walkthrough"></a>

No exemplo a seguir, explicaremos como especificar um AWS AppSync destino para uma EventBridge regra, incluindo a definição de uma transformação de entrada para formatar eventos para entrega.

Suponha que você tenha uma API AWS AppSync GraphQL`Ec2EventAPI`,, definida pelo seguinte esquema:

```
type Event {
    id: ID!
    statusCode: String
    instanceId: String
}

type Mutation {
    pushEvent(id: ID!, statusCode: String!, instanceId: String): Event
}

type Query {
    listEvents: [Event]
}

type Subscription {
    subscribeToEvent(id: ID, statusCode: String, instanceId: String): Event
        @aws_subscribe(mutations: ["pushEvent"])
}
```

Clientes de aplicações que utilizam essa API podem assinar o `subscribeToEvent`, cuja assinatura é acionada pela mutação `pushEvent`.

Você pode criar uma EventBridge regra com um destino que envia eventos para a AppSync API por meio da `pushEvent` mutação. Quando a mutação é invocada, qualquer cliente assinante recebe o evento.

Para especificar essa API como o destino de uma EventBridge regra, você faria o seguinte:

1. Defina o nome do recurso da Amazon (ARN) do destino da regra como o ARN do endpoint de GraphQL da API `Ec2EventAPI`.

1. Especifique a operação de mutação de GraphQL como um parâmetro de destino:

   ```
   mutation CreatePushEvent($id: ID!, $statusCode: String, $instanceId: String) {
     pushEvent(id: $input, statusCode: $statusCode, instanceId: $instanceId) {
       id
       statusCode
       instanceId
     }
   }
   ```

   O conjunto de seleção de mutações deve incluir todos os campos que você deseja assinar em sua assinatura de GraphQL.

1. Configure um transformador de entrada para especificar como os dados dos eventos correspondentes são utilizados na operação.

   Suponha que você tenha selecionado o evento de entrada `“EC2 Instance Launch Successful”`:

   ```
   {
     "version": "0",
     "id": "3e3c153a-8339-4e30-8c35-687ebef853fe",
     "detail-type": "EC2 Instance Launch Successful",
     "source": "aws.autoscaling",
     "account": "123456789012",
     "time": "2015-11-11T21:31:47Z",
     "region": "us-east-1",
     "resources": ["arn:aws:autoscaling:us-east-1:123456789012:autoScalingGroup:eb56d16b-bbf0-401d-b893-d5978ed4a025:autoScalingGroupName/sampleLuanchSucASG", "arn:aws:ec2:us-east-1:123456789012:instance/i-b188560f"],
     "detail": {
       "StatusCode": "InProgress",
       "AutoScalingGroupName": "sampleLuanchSucASG",
       "ActivityId": "9cabb81f-42de-417d-8aa7-ce16bf026590",
       "Details": {
         "Availability Zone": "us-east-1b",
         "Subnet ID": "subnet-95bfcebe"
       },
       "RequestId": "9cabb81f-42de-417d-8aa7-ce16bf026590",
       "EndTime": "2015-11-11T21:31:47.208Z",
       "EC2InstanceId": "i-b188560f",
       "StartTime": "2015-11-11T21:31:13.671Z",
       "Cause": "At 2015-11-11T21:31:10Z a user request created an AutoScalingGroup changing the desired capacity from 0 to 1.  At 2015-11-11T21:31:11Z an instance was started in response to a difference between desired and actual capacity, increasing the capacity from 0 to 1."
     }
   }
   ```

   É possível definir as seguintes variáveis para uso no modelo, utilizando caminho de entrada do transformador de entrada do destino:

   ```
   {
     "id": "$.id",
     "statusCode": "$.detail.StatusCode",
     "EC2InstanceId": "$.detail.EC2InstanceId"
   }
   ```

   Componha o modelo do transformador de entrada para definir as variáveis que EventBridge passam para a operação de AWS AppSync mutação. O modelo deve ser avaliado como JSON. Determinado o nosso caminho de entrada, é possível compor o seguinte modelo:

   ```
   {
     "id": <id>,
     "statusCode": <statusCode>,
     "instanceId": <EC2InstanceId>
   }
   ```

# Enviar eventos para um AWS serviço em outra conta no EventBridge
<a name="eb-service-cross-account"></a>

EventBridge pode enviar eventos de um barramento de eventos em uma AWS conta para AWS serviços compatíveis em outra conta, simplificando assim a arquitetura de suas soluções orientadas a eventos e reduzindo a latência.

Por exemplo, vamos supor que você tenha um conjunto de barramentos de eventos, hospedados em várias contas, dos quais precise para enviar eventos relacionados à segurança para uma fila do Amazon SQS em uma conta centralizada para análise e processamento assíncronos adicionais.

EventBridge suporta o envio de eventos para alvos de várias contas na mesma região.

## Serviços com suporte
<a name="eb-service-cross-account-services"></a>

EventBridge suporta o envio de eventos para os seguintes alvos em outras AWS contas:
+ Amazon API Gateway APIs
+ Amazon Kinesis Data Streams córregos
+ funções do Lambda
+ Tópicos do Amazon SNS
+ Filas do Amazon SQS

Para ver os preços, consulte os [ EventBridge preços da Amazon](https://aws.amazon.com/eventbridge/pricing/).

## Permissões
<a name="eb-service-cross-account-permissions"></a>

Habilitar o acesso para entrega de eventos entre contas a AWS serviços como alvos envolve as seguintes etapas: 
+ Especificar uma função de execução
+ Anexar uma política de recursos ao destino

### Especificar uma função de execução
<a name="eb-service-cross-account-permissions-role"></a>

Especifique uma função de execução EventBridge a ser usada ao enviar eventos para o destino quando a regra for acionada.

Essa função de execução deve estar na mesma conta do barramento de eventos. EventBridge assume essa função ao tentar invocar o alvo, e todas as Políticas de Controle de Serviço (SCPs) que afetam essa conta são aplicadas. 

SCPs são um tipo de política organizacional que você pode usar para gerenciar permissões em sua organização. Para saber mais, consulte [Políticas de controle de serviço](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) no *Guia do usuário do AWS Organizations *.

Por exemplo, a política a seguir permite que o EventBridge serviço assuma a função de execução:

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "events.amazonaws.com"
       },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

E a seguinte política permite que a função envie mensagens a filas do Amazon SQS:

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "sqs:SendMessage",
      "Resource": "arn:aws:sqs:us-east-1:123456789012:queue-name"
    }
  ]
}
```

------

Para contas usando AWS Organizations, você pode aplicar um SCP para evitar a invocação de recursos que não pertencem à sua organização, conforme mostrado no exemplo a seguir:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
          {
            "Action": [
                "*"
            ],
            "Resource": "*",
            "Effect": "Deny",
            "Condition": {
                "StringNotEquals": {
                    "aws:ResourceOrgID": "o-1234567890"
                }
            }
        }
    ]
}
```

------

**nota**  
Para destinos entre várias contas que não sejam barramentos de eventos, a chamada de `PutTarget` de uma conta diferente da conta do barramento de eventos, mesmo que forneça uma função de execução da conta de chamada, não é compatível.

### Anexar uma política de acesso de recurso ao destino
<a name="eb-service-cross-account-permissions-policy"></a>

Os AWS serviços que podem receber eventos entre contas oferecem suporte às políticas baseadas em recursos do IAM. Isso permite a você anexar uma política de acesso de recurso ao destino, para que possa especificar qual conta tem acesso a ela.

Com base em nosso exemplo anterior, a seguinte política permite que a conta de barramento de eventos acesse a fila do Amazon SQS na conta de destino:

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "SQS:SendMessage"
      ],
      "Effect": "Allow",
      "Resource": "arn:aws:sqs:us-east-1:123456789012:queue-name",
      "Principal": {
      "AWS": "123456789012"
     }
    }
  ]
}
```

------

Para obter mais informações, consulte [Políticas baseadas em identidade e em recurso](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_identity-vs-resource.html) no *Guia do usuário do AWS Identity and Access Management *.

## Criação de regras que enviam eventos para AWS serviços em outras contas
<a name="eb-service-cross-account"></a>

Especificar um AWS serviço em outra conta como destino faz parte da criação da regra de barramento de eventos.

**Para criar uma regra que envie eventos para um AWS serviço em uma AWS conta diferente usando o console**

1. Siga as etapas no procedimento [Criação de regras na Amazon EventBridge](eb-create-rule-visual.md).

1. Na etapa [Selecione destinos](eb-create-rule-wizard.md#eb-create-rule-target), quando solicitado a escolher um tipo de destino:

   1. Selecione o **serviço da AWS **.

   1. Selecione um AWS serviço que ofereça suporte a metas entre contas.

      Para obter mais informações, consulte [Serviços com suporte](#eb-service-cross-account-services).

   1. Em **Local de destino**, escolha **Destino em outra conta da AWS **.

   1. Insira o ARN do recurso de destino para o qual você deseja enviar eventos.

   1. Selecione o nome da função de execução a ser usada na lista suspensa.

   1. Forneça todas as informações adicionais solicitadas para o serviço selecionado. Os campos exibidos variam de acordo com o serviço selecionado.

1. Conclua a criação da regra seguindo as etapas de procedimento.

# Envio e recebimento de eventos entre AWS contas na Amazon EventBridge
<a name="eb-cross-account"></a>

Você pode configurar EventBridge para enviar e receber [eventos entre os](eb-events.md) [barramentos de eventos](eb-event-bus.md) nas AWS contas. Ao configurar EventBridge para enviar ou receber eventos entre contas, você pode especificar quais AWS contas podem enviar ou receber eventos do barramento de eventos em sua conta. Também é possível permitir ou negar eventos de [regras](eb-rules.md) específicas associadas ao barramento de eventos ou eventos de origens específicas. Para obter mais informações, consulte [Simplificando o acesso entre contas com as políticas de recursos da Amazon EventBridge ](https://aws.amazon.com/blogs//compute/simplifying-cross-account-access-with-amazon-eventbridge-resource-policies/)

**nota**  
Se você usar AWS Organizations, você pode especificar uma organização e conceder acesso a todas as contas dessa organização. Além disso, o barramento de eventos de envio deve ter perfis do IAM associados ao enviar eventos para outra conta. Para obter mais informações, consulte [O que é o AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html) no *Guia do usuário do AWS Organizations *.

**nota**  
Se estiver usando um plano de resposta do Incident Manager como destino, todos os planos de resposta compartilhados com sua conta estarão disponíveis por padrão.

Você pode enviar e receber eventos entre barramentos de eventos em AWS contas dentro da mesma região em todas as regiões e entre contas em regiões diferentes, desde que a região de destino seja uma região de destino [entre](eb-cross-region.md) regiões compatível.

As etapas a serem configuradas EventBridge para enviar ou receber eventos de um barramento de eventos em uma conta diferente incluem o seguinte:
+ Na conta do *destinatário*, edite as permissões em um barramento de eventos para permitir que AWS contas específicas, uma organização ou todas as AWS contas enviem eventos para a conta do destinatário.
+ Na conta *remetente*, configure uma ou mais regras que têm o barramento de eventos da conta destinatária como destino.

  Se a conta do remetente herdar permissões para enviar eventos de uma AWS organização, a conta do remetente também deverá ter uma função do IAM com políticas que permitam enviar eventos para a conta do destinatário. Se você usar o Console de gerenciamento da AWS para criar a regra que tem como alvo o barramento de eventos na conta do destinatário, a função será criada automaticamente. Se você usar o AWS CLI, deverá criar a função manualmente.
+ Na conta *destinatária*, configure uma ou mais regras que correspondam aos eventos oriundos da conta remetente.

Os eventos enviados de uma conta para outra são cobrados na conta de envio como eventos personalizados. A conta de recebimento não é cobrada. Para obter mais informações, consulte [Amazon EventBridge Pricing](https://aws.amazon.com/eventbridge/pricing/).

Se uma conta destinatária puder definir uma regra que envia eventos recebidos de uma conta remetente para uma terceira conta, esses eventos não serão enviados para a terceira conta.

Se você tiver três barramentos de eventos na mesma conta e configurar uma regra no primeiro barramento de eventos para direcionar eventos do segundo para um terceiro, esses eventos não serão enviados ao terceiro barramento de eventos.

 O seguinte vídeo aborda eventos de roteamento entre contas:




## Conceda permissões para permitir eventos de outras AWS contas
<a name="eb-receiving-events-from-another-account"></a>

Para receber eventos de outras contas ou organizações, primeiro você deve editar as permissões no barramento de eventos padrão da conta. O barramento de eventos padrão aceita eventos de AWS serviços, outras AWS contas autorizadas e `PutEvents` chamadas. As permissões para um barramento de eventos são concedidas ou negadas usando uma política baseada em recursos anexada ao barramento de eventos. Na política, você pode conceder permissões a outras AWS contas usando o ID da conta ou a uma AWS organização usando o ID da organização. Para saber mais sobre permissões de barramento de eventos, consulte [Permissões para ônibus de eventos na Amazon EventBridge](eb-event-bus-perms.md).

**nota**  
EventBridge agora exige que todas as novas metas de barramento de eventos entre contas adicionem funções do IAM. Isto se aplica somente aos destinos de barramentos de eventos criados após 2 de março de 2023. As aplicações criadas sem um perfil do IAM antes dessa data não são afetados. No entanto, recomendamos adicionar funções do IAM para conceder aos usuários acesso a recursos em outra conta, pois isso garante que os limites da organização usando as Políticas de Controle de Serviços (SCPs) sejam aplicados para determinar quem pode enviar e receber eventos de contas em sua organização. 

**Importante**  
Se você optar por receber eventos de todas as AWS contas, tenha o cuidado de criar regras que correspondam apenas aos eventos a serem recebidos de outras pessoas. Para criar regras mais seguras, certifique-se de que o padrão de evento de cada regra contenha um `Account` campo com a conta IDs de uma ou mais contas das quais receber eventos. As regras que têm um padrão de evento contendo um campo Conta não correspondem aos eventos enviados de contas que não estão listadas no campo `Account`. Para obter mais informações, consulte [Eventos na Amazon EventBridge](eb-events.md).

## Regras para eventos entre AWS contas
<a name="eb-writing-rules-that-match-events-from-another-account"></a>

Se sua conta estiver configurada para receber eventos de ônibus de eventos em outras AWS contas, você poderá criar regras que correspondam a esses eventos. Defina o [padrão do evento](eb-event-patterns.md) da regra para corresponder aos barramentos de eventos que está recebendo em outra conta.

A não ser que especifique `account` no padrão de evento de uma regra, qualquer uma das regras da conta, nova ou existente, que corresponda a eventos recebidos de outras contas é disparada com base nesses eventos. Se estiver recebendo barramentos de eventos de outra conta e quiser que uma regra dispare somente naquele padrão de evento gerado da sua própria conta, adicione `account` e especifique seu próprio ID de conta para o padrão de evento da regra.

Se você configurou sua AWS conta para aceitar eventos de ônibus de eventos em todas as AWS contas, é altamente recomendável que você adicione `account` a todas as EventBridge regras da sua conta. Isso evita que regras em sua conta sejam acionadas em eventos de contas desconhecidas AWS . Ao especificar o `account` campo na regra, você pode especificar a conta IDs de mais de uma AWS conta no campo.

Para que uma regra seja acionada em um evento correspondente de qualquer barramento de eventos na AWS conta à qual você tenha concedido permissões, não especifique \$1 no `account` campo da regra. Isso não corresponderia a nenhum evento, porque \$1 nunca é exibido no campo `account` de um evento. Em vez disso, basta omitir o campo `account` da regra.

## Criação de regras que enviam eventos entre AWS contas
<a name="eb-create-rule-cross-account-target"></a>

Especificar um barramento de eventos em outra conta como destino faz parte da criação da regra.

**Para criar uma regra que envie eventos para uma AWS conta diferente usando o console**

1. Siga as etapas no procedimento [Criação de regras na Amazon EventBridge](eb-create-rule-visual.md).

1. Na etapa [Selecione destinos](eb-create-rule-wizard.md#eb-create-rule-target), quando solicitado a escolher um tipo de destino:

   1. Selecione o **ônibus EventBridge do evento**.

   1. Selecione **Barramento de eventos em uma conta ou região diferente**.

   1. Para **Barramento de eventos como destino**, insira o ARN do barramento de eventos que deseja usar.

1. Conclua a criação da regra seguindo as etapas de procedimento.

# Envio e recebimento de eventos entre AWS regiões na Amazon EventBridge
<a name="eb-cross-region"></a>

Você pode configurar EventBridge para enviar e receber [eventos](eb-events.md) entre AWS regiões. Também é possível permitir ou negar eventos de regiões específicas, [regras](eb-rules.md) específicas associadas ao barramento de eventos ou eventos de origens específicas. Para obter mais informações, consulte [Introdução ao roteamento de eventos entre regiões](https://aws.amazon.com/blogs//compute/introducing-cross-region-event-routing-with-amazon-eventbridge/) com a Amazon EventBridge

 O vídeo a seguir aborda eventos de roteamento entre regiões usando o [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/), AWS CloudFormation, e AWS Serverless Application Model:




## Criação de regras que enviam eventos para uma AWS região diferente
<a name="eb-create-rule-cross-region-target"></a>

Especificar um barramento de eventos em outra AWS região como destino faz parte da criação da regra.

**Para criar uma regra que envie eventos para uma AWS conta diferente usando o console**

1. Siga as etapas no procedimento [Criação de regras na Amazon EventBridge](eb-create-rule-visual.md).

1. Na etapa [Selecione destinos](eb-create-rule-wizard.md#eb-create-rule-target), quando solicitado a escolher um tipo de destino:

   1. Selecione o **ônibus EventBridge do evento**.

   1. Selecione **Barramento de eventos em uma conta ou região diferente**.

   1. Para **Barramento de eventos como destino**, insira o ARN do barramento de eventos que deseja usar.

1. Conclua a criação da regra seguindo as etapas de procedimento.

# Envio de eventos entre ônibus de eventos na mesma conta e região na Amazon EventBridge
<a name="eb-bus-to-bus"></a>

Você pode configurar EventBridge para enviar e receber [eventos](eb-events.md) entre [barramentos de eventos](eb-event-bus.md) na mesma AWS conta e região. 

Ao configurar EventBridge para enviar ou receber eventos entre barramentos de eventos, você usa funções do IAM no barramento de eventos do *remetente* para dar permissão ao barramento de eventos do *remetente* para enviar eventos ao barramento de eventos do *receptor*. Você usa políticas [baseadas em recursos](eb-use-resource-based.md) no barramento de eventos do *destinatário* a fim de dar permissão ao barramento de eventos do *destinatário* para receber eventos do barramento de eventos do *remetente*. Também é possível permitir ou negar eventos de determinados barramentos de eventos, [regras](eb-rules.md) específicas associadas ao barramento de eventos ou eventos de origens específicas. Para obter mais informações sobre permissões de barramento de eventos, consulte.[Permissões para ônibus de eventos na Amazon EventBridge](eb-event-bus-perms.md)

As etapas a serem configuradas EventBridge para enviar ou receber eventos entre os barramentos de eventos em sua conta incluem o seguinte:
+ Para usar um perfil do IAM existente, é preciso conceder as permissões do barramento de eventos do remetente ao barramento de eventos do destinatário ou as permissões do barramento de eventos do destinatário ao barramento de eventos do remetente.
+ Na conta *remetente*, configure uma ou mais regras que têm o barramento de eventos do destinatário como o destino e crie um perfil do IAM. Para obter um exemplo da política que deve ser anexada ao perfil, consulte [Exemplo de política: enviar eventos para um ônibus de eventos na mesma conta na Amazon EventBridge](eb-event-bus-example-policy-same-account.md).
+ No barramento de eventos do *destinatário*, edite as permissões para permitir que os eventos sejam transmitidos de outro barramento de eventos.
+ No evento do *destinatário*, configure uma ou mais regras que correspondam aos eventos oriundos do barramento de eventos do remetente.
**nota**  
EventBridge não é possível rotear eventos recebidos de um ônibus de eventos do remetente para um terceiro ônibus de eventos.

Os eventos enviados de um barramento de eventos para outro são cobrados como eventos personalizados. Para obter mais informações, consulte [Definição de preço do Amazon EventBridge](https://aws.amazon.com/eventbridge/pricing/).

## Criação de regras que enviam eventos para um barramento de eventos diferente na mesma AWS conta e região
<a name="eb-create-rule-same-account-region-target"></a>

Para enviar eventos para outro barramento de eventos, é necessário criar uma regra com um barramento de eventos como destino. Especificar um barramento de eventos na mesma AWS conta e região como destino faz parte da criação da regra.

**Para criar uma regra que envie eventos para um barramento de eventos diferente na mesma AWS conta e região usando o console**

1. Siga as etapas no procedimento [Criação de regras na Amazon EventBridge](eb-create-rule-visual.md).

1. Na etapa [Selecione destinos](eb-create-rule-wizard.md#eb-create-rule-target), quando solicitado a escolher um tipo de destino:

   1. Selecione o **ônibus EventBridge do evento**.

   1. Selecione **Event bus na mesma AWS conta e região**.

   1. Em **barramento de eventos como destino**, selecione um tipo de barramento de eventos na lista suspensa.

1. Conclua a criação da regra ao seguir as etapas de procedimento.

# Transformação EventBridge de insumos da Amazon
<a name="eb-transform-target-input"></a>

Você pode personalizar o texto de um [evento](eb-events.md) antes de EventBridge passar as informações para o [destino](eb-targets.md) de uma [regra](eb-rules.md). Ao usar o transformador de entrada no console ou na API, são definidas variáveis que usam o caminho JSON para referenciar valores na origem original do evento. O evento transformado é enviado para um destino em vez do evento original. No entanto, os [parâmetros do caminho dinâmico](eb-targets.md#dynamic-path-parameters) devem fazer referência ao evento original, não ao evento transformado. É possível definir até 100 variáveis, atribuindo a cada um valor da entrada. Em seguida, você pode usar essas variáveis no *modelo de entrada* como < *variable-name* >. 

Para obter um tutorial sobre como usar o transformador de entrada, consulte [Tutorial: usar transformadores de entrada para transformar eventos no EventBridge](eb-input-transformer-tutorial.md).

**nota**  
EventBridge não suporta toda a sintaxe do JSON Path e a avalia em tempo de execução. A sintaxe compatível inclui:   
notação de pontos (por exemplo, `$.detail`)
traços
sublinhados
caracteres alfanuméricos
índices de matriz
curingas (\$1)
barras dianteiras

**Topics**
+ [Variáveis predefinidas](#eb-transform-input-predefined)
+ [Exemplos de transformação de entrada](#eb-transform-input-examples)
+ [Transformando a entrada usando a API EventBridge](#eb-transform-input-api)
+ [Transformando a entrada usando AWS CloudFormation](#eb-transform-input-cfn)
+ [Problemas comuns com a transformação de entrada](#eb-transform-input-issues)
+ [Configurando um transformador de entrada ao criar uma regra no EventBridge](eb-transform-input-rule.md)
+ [Testando um transformador de entrada de destino usando o Sandbox EventBridge](eb-sandbox-input-trans.md)

## Variáveis predefinidas
<a name="eb-transform-input-predefined"></a>

Há variáveis predefinidas que podem ser usadas sem definir um caminho JSON. Estas variáveis são reservadas e não é possível criar variáveis com esses nomes:
+ ****`aws.events.rule-arn`— O Amazon Resource Name (ARN) da EventBridge regra. 
+ ****`aws.events.rule-name`— O nome da EventBridge regra. 
+ ****`aws.events.event.ingestion-time`— A hora em que o evento foi recebido por EventBridge. Este é um carimbo de data/hora ISO 8601. Essa variável é gerada por EventBridge e não pode ser substituída.
+ ****`aws.events.event`: a carga útil do evento original como JSON (sem o campo `detail`). Só pode ser usado como um valor para um campo JSON, pois o conteúdo não tem escape.
+ ****`aws.events.event.json`: a carga útil completa do evento original como JSON (com o campo `detail`). Só pode ser usado como um valor para um campo JSON, pois o conteúdo não tem escape.

## Exemplos de transformação de entrada
<a name="eb-transform-input-examples"></a>

Veja a seguir um exemplo de evento do Amazon EC2.

```
{
  "version": "0",
  "id": "7bf73129-1428-4cd3-a780-95db273d1602",
  "detail-type": "EC2 Instance State-change Notification",
  "source": "aws.ec2",
  "account": "123456789012",
  "time": "2015-11-11T21:29:54Z",
  "region": "us-east-1",
  "resources": [
    "arn:aws:ec2:us-east-1:123456789012:instance/i-abcd1111"
  ],
  "detail": {
    "instance-id": "i-0123456789",
    "state": "RUNNING"
  }
}
```

Ao definir uma regra no console, selecione a opção **Input Transformer (Transformador de entrada)** em **Configure input (Configurar entrada)**. Essa opção exibe duas caixas de texto: uma para o *Input Path (Caminho de Entrada)* e outra para o *Input Template (Modelo de entrada)*.

### Caminho de entrada
<a name="eb-transform-target-input-path"></a>

O *Caminho de entrada* é usado para definir variáveis. Use o caminho JSON para fazer referência a itens em seu evento e armazenar esses valores em variáveis. Por exemplo, é possível criar um *caminho de entrada* para fazer referência a valores no evento de exemplo inserindo o seguinte na primeira caixa de texto: Também é possível usar colchetes e índices para obter itens de matrizes.

**nota**  
EventBridge substitui os transformadores de entrada em tempo de execução para garantir uma saída JSON válida. Por isso, coloque aspas nas variáveis que se referem aos parâmetros de caminho JSON, mas não coloque aspas nas variáveis que se referem a objetos ou matrizes JSON.

```
{
  "timestamp" : "$.time",
  "instance" : "$.detail.instance-id", 
  "state" : "$.detail.state",
  "resource" : "$.resources[0]"
}
```

Isto definirá duas variáveis, `<timestamp>`, `<instance>`, `<state>` e `<resource>`. É possível pode fazer referência a essas variáveis ao criar o *modelo de entrada*.

**nota**  
Os destinos Amazon CloudWatch Logs e SSM não suportam o uso de `Input` e `InputPath` em seus transformadores de entrada.

### Modelo de entrada
<a name="eb-transform-target-input-template"></a>

O *modelo de entrada* é um modelo para as informações que você deseja passar para seu destino. É possível criar um modelo que transmita uma string ou JSON para o destino. Usando o evento anterior e o *caminho de entrada*, os exemplos de *modelo de entrada* a seguir transformarão o evento na saída de exemplo antes de fazer o roteamento dele para um destino.


| Description | Modelo | Output | 
| --- | --- | --- | 
| String simples |  <pre>"instance <instance> is in <state>"</pre> |  <pre>"instance i-0123456789 is in RUNNING"</pre>  | 
|  **String com aspas de escape**  |  <pre>"instance \"<instance>\" is in <state>"</pre> |  <pre>"instance \"i-0123456789\" is in RUNNING"</pre> Observe que esse é o comportamento no EventBridge console. A AWS CLI faz o escape dos caracteres de barra e o resultado é `"instance "i-0123456789" is in RUNNING"`.  | 
|  **JSON simples**  |  <pre>{<br />  "instance" : <instance>,<br />  "state": <state><br />}</pre> |  <pre>{<br />  "instance" : "i-0123456789",<br />  "state": "RUNNING"<br />}</pre>  | 
|  **JSON com strings e variáveis**  |  <pre>{<br /> "instance" : <instance>,<br /> "state": "<state>",<br /> "instanceStatus": "instance \"<instance>\" is in <state>"<br />}</pre>  |  <pre>{<br /> "instance" : "i-0123456789",<br /> "state": "RUNNING",<br /> "instanceStatus": "instance \"i-0123456789\" is in RUNNING"<br />}</pre>  | 
|  **JSON com uma mistura de variáveis e informações estáticas**  |  <pre>{<br />  "instance" : <instance>,<br />  "state": [ 9, <state>, true ],<br />  "Transformed" : "Yes"<br />}<br /></pre> |  <pre>{<br />  "instance" : "i-0123456789",<br />  "state": [<br />    9,<br />    "RUNNING",<br />    true<br />  ],<br />  "Transformed" : "Yes"<br />}</pre>  | 
|  **Incluir variáveis reservadas no JSON**  |  <pre>{<br />  "instance" : <instance>,<br />  "state": <state>,<br />  "ruleArn" : <aws.events.rule-arn>,<br />  "ruleName" : <aws.events.rule-name>,<br />  "originalEvent" : <aws.events.event.json><br />}</pre> |  <pre>{<br />  "instance" : "i-0123456789",<br />  "state": "RUNNING",<br />  "ruleArn" : "arn:aws:events:us-east-2:123456789012:rule/example",<br />  "ruleName" : "example",<br />  "originalEvent" : {<br />    ... // commented for brevity<br />  }<br />}</pre>  | 
|  **Incluir variáveis reservadas em uma string**  | <pre>"<aws.events.rule-name> triggered"</pre> |  <pre>"example triggered"</pre>  | 
|  **Grupo de CloudWatch registros da Amazon**  | <pre>{<br />  "timestamp" : <timestamp>,<br />  "message": "instance \"<instance>\" is in <state>"<br />}</pre> |  <pre>{<br />  "timestamp" : 2015-11-11T21:29:54Z,<br />  "message": "instance "i-0123456789" is in RUNNING<br />}</pre>  | 

## Transformando a entrada usando a API EventBridge
<a name="eb-transform-input-api"></a>

Para obter informações sobre como usar a EventBridge API para transformar a entrada, consulte [Usar o Input Transformer para extrair dados de um evento e inserir esses dados no destino](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutTargets.html#API_PutTargets_Example_2).

## Transformando a entrada usando AWS CloudFormation
<a name="eb-transform-input-cfn"></a>

Para obter informações sobre como usar AWS CloudFormation para transformar a entrada, consulte [AWS::Events::Rule InputTransformer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html).

## Problemas comuns com a transformação de entrada
<a name="eb-transform-input-issues"></a>

Esses são alguns problemas comuns ao transformar a entrada em: EventBridge
+  Para strings, as aspas são necessárias.
+  Não há validação ao criar o caminho JSON para o modelo.
+  Se especificar uma variável para corresponder a um caminho JSON que não existe no evento, essa variável não será criada e não aparecerá na saída.
+ Propriedades JSON, como `aws.events.event.json`, só podem ser usadas como o valor de um campo JSON, não embutidas em outras strings.
+  EventBridge não escapa dos valores extraídos pelo *caminho de entrada*, ao preencher o *modelo de entrada de* um destino.
+ Se um caminho JSON fizer referência a um objeto ou matriz JSON, mas a variável for referenciada em uma string, EventBridge removerá todas as aspas internas para garantir uma string válida. Por exemplo, para uma variável `<detail>` apontada`$.detail`, “Detalhe é<detail>” resultaria na EventBridge remoção de aspas do objeto. 

  Portanto, se quiser gerar um objeto JSON com base em uma única variável de caminho JSON, deverá colocá-lo como uma chave. Neste exemplo, `{"detail": <detail>}`.
+ As aspas não são necessárias para variáveis que representam cadeias de caracteres. Elas são permitidas, mas adicionam EventBridge automaticamente aspas aos valores das variáveis de string durante a transformação, para garantir que a saída da transformação seja um JSON válido. EventBridge não adiciona aspas às variáveis que representam objetos ou matrizes JSON. Não adicione aspas para variáveis que representem objetos ou matrizes JSON.

  Por exemplo, o seguinte modelo de entrada inclui variáveis que representam cadeias de caracteres e objetos JSON:

  ```
  {
    "ruleArn" : <aws.events.rule-arn>,
    "ruleName" : <aws.events.rule-name>,
    "originalEvent" : <aws.events.event.json>
  }
  ```

  Resultando em JSON válido com cotação adequada:

  ```
  {
    "ruleArn" : "arn:aws:events:us-east-2:123456789012:rule/example",
    "ruleName" : "example",
    "originalEvent" : {
      ... // commented for brevity
    }
  }
  ```
+ Para saída de texto (não JSON) como strings de várias linhas, coloque cada linha separada em seu modelo de entrada entre aspas duplas. 

  Por exemplo, se estiver fazendo a correspondência de eventos de [descoberta do Amazon Inspector](https://docs.aws.amazon.com/inspector/latest/user/eventbridge-integration.html#event-finding) com o seguinte padrão de eventos:

  ```
  {
    "detail": {
      "severity": ["HIGH"],
      "status": ["ACTIVE"]
    },
    "detail-type": ["Inspector2 Finding"],
    "source": ["inspector2"]
  }
  ```

  E usando o seguinte caminho de entrada:

  ```
  {
    "account": "$.detail.awsAccountId",
    "ami": "$.detail.resources[0].details.awsEc2Instance.imageId",
    "arn": "$.detail.findingArn",
    "description": "$.detail.description",
    "instance": "$.detail.resources[0].id",
    "platform": "$.detail.resources[0].details.awsEc2Instance.platform",
    "region": "$.detail.resources[0].region",
    "severity": "$.detail.severity",
    "time": "$.time",
    "title": "$.detail.title",
    "type": "$.detail.type"
  }
  ```

  Você pode usar o modelo de entrada abaixo para gerar uma saída de string de várias linhas:

  ```
  "<severity> severity finding <title>"
  "Description: <description>"
  "ARN: \"<arn>\""
  "Type: <type>"
  "AWS Account: <account>"
  "Region: <region>"
  "EC2 Instance: <instance>"
  "Platform: <platform>"
  "AMI: <ami>"
  ```

# Configurando um transformador de entrada ao criar uma regra no EventBridge
<a name="eb-transform-input-rule"></a>

Como parte da criação de uma regra, você pode especificar um transformador de entrada EventBridge para usar no processamento de eventos correspondentes antes de enviar esses eventos para o destino especificado. Você pode configurar transformadores de entrada para destinos que sejam AWS serviços ou destinos de API.

**Para criar um transformador de entrada de destino como parte de uma regra**

1. Siga as etapas para criar uma regra, conforme detalhado em [Criação de regras na Amazon EventBridge](eb-create-rule-visual.md).

1. Na **Etapa 3: selecione os destinos**, expanda **Configurações adicionais**.

1. Em **Configurar entrada de destino**, escolha **Transformador de entrada** na lista suspensa.

   Clique em **Configurar transformador de entrada**.

   EventBridge exibe a caixa de diálogo **Configurar transformador de entrada**.

1. Na seção **Evento de amostra**, escolha um **Tipo de evento de amostra** com o qual deseja testar seu padrão de evento. Você pode escolher um AWS evento, um evento de parceiro ou inserir seu próprio evento personalizado.

------
#### [ AWS events ]

   Selecione entre os eventos emitidos pelos Serviços da AWS compatíveis.

   1. Selecione **Eventos da AWS **.

   1. Em **Eventos de amostra**, escolha o AWS evento desejado. Os eventos são organizados por AWS serviço.

      Quando você seleciona um evento, EventBridge preenche o evento de amostra.

      Por exemplo, se você escolher **S3 Object Created**, EventBridge exibirá um exemplo do evento S3 Object Created.

   1. (Opcional) Também é possível selecionar **Copiar** para copiar o evento de amostra para a área de transferência do seu dispositivo.

------
#### [ Partner events ]

   Selecione entre os eventos emitidos por serviços terceirizados que oferecem suporte EventBridge, como o Salesforce.

   1. Selecione **eventos de EventBridge parceiros**.

   1. Em **Exemplos de eventos**, escolha o evento do parceiro desejado. Os eventos são organizados pelo parceiro.

      Quando você seleciona um evento, EventBridge preenche o evento de amostra.

   1. (Opcional) Também é possível selecionar **Copiar** para copiar o evento de amostra para a área de transferência do seu dispositivo.

------
#### [ Enter your own ]

   Insira o seu próprio evento em texto JSON.

   1. Selecione **Inserir seu próprio**.

   1. EventBridge preenche o evento de amostra com um modelo de atributos de evento necessários.

   1. Edite e adicione ao evento de amostra conforme desejado. O evento de amostra deve ser JSON válido.

   1. (Opcional) Também é possível escolher uma das seguintes opções:
      + **Copiar**: copie o evento de amostra para a área de transferência do seu dispositivo.
      + **Aprimorar:** facilita a leitura do texto JSON adicionando quebras de linha, tabulações e espaços.

------

1. (Opcional) Expanda a seção **Exemplos de caminhos de entrada, modelos e saídas** para ver exemplos de:
   + Como os caminhos JSON são usados para definir variáveis que representam dados de eventos
   + Como essas variáveis podem ser usadas em um modelo de transformador de entrada
   + A saída resultante que é EventBridge enviada para o destino

   Para obter exemplos mais detalhados de transformações de entrada, consulte [Exemplos de transformação de entrada](eb-transform-target-input.md#eb-transform-input-examples).

1. Na seção **Transformador de entrada de destino**, defina as variáveis que deseja usar no modelo de entrada.

   Variáveis usam caminho JSON para fazer referência a valores na origem do evento original. Em seguida, você pode referenciar essas variáveis no modelo de entrada para incluir dados do evento de origem original no evento transformado que EventBridge passa para o destino. É possível definir até 100 variáveis. O transformador de entrada deve ser um JSON válido.

   Por exemplo, suponha que você tenha escolhido o AWS evento **S3 Object Created** como seu evento de amostra para esse transformador de entrada. É possível definir as seguintes variáveis para uso em seu modelo:

   ```
   {
     "requester": "$.detail.requester",
     "key": "$.detail.object.key",
     "bucket": "$.detail.bucket.name"
   }
   ```

   (Opcional) Também é possível escolher **Copiar** para copiar o transformador de entrada para a área de transferência do seu dispositivo.

1. Na seção **Modelo**, componha o modelo que você deseja usar para determinar o que EventBridge passa para o alvo.

   É possível usar JSON, strings, informações estáticas, variáveis que você definiu, bem como variáveis reservadas. Para obter exemplos mais detalhados de transformações de entrada, consulte [Exemplos de transformação de entrada](eb-transform-target-input.md#eb-transform-input-examples).

   Por exemplo, suponha que tenha definido as variáveis no exemplo anterior. O modelo a seguir poderia ser composto, que faz referência a essas variáveis, bem como às variáveis reservadas e às informações estáticas.

   ```
   {
       "message": "<requester> has created the object \"<key>\" in the bucket \"<bucket>\"",
       "RuleName": <aws.events.rule-name>,
       "ruleArn" : <aws.events.rule-arn>,
       "Transformed": "Yes"
   }
   ```

   (Opcional) Também é possível escolher **Copiar** para copiar o modelo para a área de transferência do seu dispositivo.

1. Para testar seu modelo, selecione **Gerar saída**.

   EventBridge processa o evento de amostra com base no modelo de entrada e exibe a saída transformada gerada em **Saída**. Essas são as informações que EventBridge passarão para o destino no lugar do evento de origem original.

   A saída gerada para o modelo de entrada de exemplo descrito acima seria a seguinte:

   ```
   {
       "message": "123456789012 has created the object "example-key" in the bucket "amzn-s3-demo-bucket"",
       "RuleName": rule-name,
       "ruleArn" : arn:aws:events:us-east-1:123456789012:rule/rule-name,
       "Transformed": "Yes"
   }
   ```

   (Opcional) Também é possível escolher **Copiar** para copiar a saída gerada para a área de transferência do seu dispositivo.

1. Selecione **Confirmar**.

1. Siga o restante das etapas para criar uma regra, conforme detalhado em [Criação de regras na Amazon EventBridge](eb-create-rule-visual.md).

# Testando um transformador de entrada de destino usando o Sandbox EventBridge
<a name="eb-sandbox-input-trans"></a>

Você pode usar transformadores de entrada para personalizar o texto de um [evento](eb-events.md) antes de EventBridge passar as informações para o [destino](eb-targets.md) de uma [regra](eb-rules.md).

A configuração de um transformador de entrada normalmente faz parte de um processo maior de especificar um destino ao [criar uma nova regra](eb-create-rule-visual.md) ou editar uma existente. No entanto EventBridge, usando o Sandbox in, você pode configurar rapidamente um transformador de entrada e usar um evento de amostra para confirmar que está obtendo a saída desejada, sem precisar criar ou editar uma regra.

Para obter mais informações sobre a transformação de entrada, consulte [Transformação EventBridge de insumos da Amazon](eb-transform-target-input.md).

**Para testar um transformador de entrada de destino**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Em **Recursos do desenvolvedor**, escolha **Sandbox** e, na página **Sandbox**, escolha a guia **Transformador de entrada de destino**.

1. Na seção **Evento de amostra**, escolha um **Tipo de evento de amostra** com o qual deseja testar seu padrão de evento. Você pode escolher um AWS evento, um evento de parceiro ou inserir seu próprio evento personalizado.

------
#### [ AWS events ]

   Selecione entre os eventos emitidos pelos Serviços da AWS compatíveis.

   1. Selecione **Eventos da AWS **.

   1. Em **Eventos de amostra**, escolha o AWS evento desejado. Os eventos são organizados por AWS serviço.

      Quando você seleciona um evento, EventBridge preenche o evento de amostra.

      Por exemplo, se você escolher **S3 Object Created**, EventBridge exibirá um exemplo do evento S3 Object Created.

   1. (Opcional) Também é possível selecionar **Copiar** para copiar o evento de amostra para a área de transferência do seu dispositivo.

------
#### [ Partner events ]

   Selecione entre os eventos emitidos por serviços terceirizados que oferecem suporte EventBridge, como o Salesforce.

   1. Selecione **eventos de EventBridge parceiros**.

   1. Em **Exemplos de eventos**, escolha o evento do parceiro desejado. Os eventos são organizados pelo parceiro.

      Quando você seleciona um evento, EventBridge preenche o evento de amostra.

   1. (Opcional) Também é possível selecionar **Copiar** para copiar o evento de amostra para a área de transferência do seu dispositivo.

------
#### [ Enter your own ]

   Insira o seu próprio evento em texto JSON.

   1. Selecione **Inserir seu próprio**.

   1. EventBridge preenche o evento de amostra com um modelo de atributos de evento necessários.

   1. Edite e adicione ao evento de amostra conforme desejado. O evento de amostra deve ser JSON válido.

   1. (Opcional) Também é possível escolher uma das seguintes opções:
      + **Copiar**: copie o evento de amostra para a área de transferência do seu dispositivo.
      + **Aprimorar:** facilita a leitura do texto JSON adicionando quebras de linha, tabulações e espaços.

------

1. (Opcional) Expanda a seção **Exemplos de caminhos de entrada, modelos e saídas** para ver exemplos de:
   + Como os caminhos JSON são usados para definir variáveis que representam dados de eventos
   + Como essas variáveis podem ser usadas em um modelo de transformador de entrada
   + A saída resultante que é EventBridge enviada para o destino

   Para obter exemplos mais detalhados de transformações de entrada, consulte [Exemplos de transformação de entrada](eb-transform-target-input.md#eb-transform-input-examples).

1. Na seção **Transformador de entrada de destino**, defina as variáveis que deseja usar no modelo de entrada.

   Variáveis usam caminho JSON para fazer referência a valores na origem do evento original. Em seguida, você pode referenciar essas variáveis no modelo de entrada para incluir dados do evento de origem original no evento transformado que EventBridge passa para o destino. É possível definir até 100 variáveis. O transformador de entrada deve ser um JSON válido.

   Por exemplo, suponha que você tenha escolhido o AWS evento **S3 Object Created** como seu evento de amostra para esse transformador de entrada. É possível definir as seguintes variáveis para uso em seu modelo:

   ```
   {
     "requester": "$.detail.requester",
     "key": "$.detail.object.key",
     "bucket": "$.detail.bucket.name"
   }
   ```

   (Opcional) Também é possível escolher **Copiar** para copiar o transformador de entrada para a área de transferência do seu dispositivo.

1. Na seção **Modelo**, componha o modelo que você deseja usar para determinar o que EventBridge passa para o alvo.

   É possível usar JSON, strings, informações estáticas, variáveis que você definiu, bem como variáveis reservadas. Para obter exemplos mais detalhados de transformações de entrada, consulte [Exemplos de transformação de entrada](eb-transform-target-input.md#eb-transform-input-examples).

   Por exemplo, suponha que tenha definido as variáveis no exemplo anterior. O modelo a seguir poderia ser composto, que faz referência a essas variáveis, bem como às variáveis reservadas e às informações estáticas.

   ```
   {
       "message": "<requester> has created the object \"<key>\" in the bucket \"<bucket>\"",
       "RuleName": <aws.events.rule-name>,
       "ruleArn" : <aws.events.rule-arn>,
       "Transformed": "Yes"
   }
   ```

   (Opcional) Também é possível escolher **Copiar** para copiar o modelo para a área de transferência do seu dispositivo.

1. Para testar seu modelo, selecione **Gerar saída**.

   EventBridge processa o evento de amostra com base no modelo de entrada e exibe a saída transformada gerada em **Saída**. Essas são as informações que EventBridge passarão para o destino no lugar do evento de origem original.

   A saída gerada para o modelo de entrada de exemplo descrito acima seria a seguinte:

   ```
   {
       "message": "123456789012 has created the object "example-key" in the bucket "amzn-s3-demo-bucket"",
       "RuleName": rule-name,
       "ruleArn" : arn:aws:events:us-east-1:123456789012:rule/rule-name,
       "Transformed": "Yes"
   }
   ```

   (Opcional) Também é possível escolher **Copiar** para copiar a saída gerada para a área de transferência do seu dispositivo.

# Arquivando e reproduzindo eventos na Amazon EventBridge
<a name="eb-archive"></a>

Em EventBridge, você pode criar um arquivo de eventos para poder *reproduzi-los* facilmente ou reenviá-los para o ônibus de eventos que os recebeu originalmente, posteriormente. Por exemplo, convém reproduzir eventos para se recuperar de erros ou validar uma nova funcionalidade no aplicativo.

## Como arquivar eventos
<a name="eb-archive-archive"></a>

Ao criar um arquivamento, você pode especificar: 
+ Quais eventos enviar para o arquivo.

  Você pode especificar um padrão de evento EventBridge para usar ao filtrar os eventos que ele envia para o arquivo.
+ Por quanto tempo reter eventos no arquivo.

  Você pode especificar o número de dias para reter eventos no arquivamento. Por padrão, EventBridge armazena eventos em um arquivo indefinidamente.

Cada arquivamento recebe eventos de um único barramento de eventos de *origem*. Você não poderá alterar o barramento de eventos de origem depois que um arquivamento for criado. Você pode criar vários arquivos para um determinado barramento de eventos.

![\[Os eventos são filtrados por um padrão de evento e enviados para um arquivo, a partir do qual eles podem ser reproduzidos.\]](http://docs.aws.amazon.com/pt_br/eventbridge/latest/userguide/images/archive_eventbridge_conceptual.svg)


EventBridge cobranças se aplicam aos arquivos. Consulte os [ EventBridge preços da Amazon](https://aws.amazon.com/eventbridge/pricing/) para obter detalhes.

### Criptografia dos eventos de arquivamento
<a name="eb-archive-encryption"></a>

Por padrão, EventBridge criptografa dados de eventos em um arquivamento usando o Advanced Encryption Standard (AES-256) de 256 bits sob uma [CMK AWS própria](https://docs.aws.amazon.com//kms/latest/developerguide/concepts.html#aws-owned-cmk), o que ajuda a proteger seus dados contra acesso não autorizado.

### Entrega de eventos
<a name="eb-archive-timing"></a>

Lembre-se das seguintes considerações sobre como EventBridge entrega eventos aos arquivos:
+ Talvez haja um atraso entre um evento ser recebido em um barramento de eventos e o evento chegando no arquivamento. É recomendado adiar a repetição dos eventos arquivados por 10 minutos para garantir que todos os eventos sejam repetidos.
+ Os valores `EventCount` e `SizeBytes` da operação [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_DescribeArchive.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_DescribeArchive.html) têm um período de reconciliação de 24 horas. Portanto, quaisquer eventos expirados recentemente ou recém-arquivados podem não estar refletidos de imediato nesses valores.

### Como evitar que eventos repetidos sejam entregues para um arquivamento
<a name="eb-archive-managed-rule"></a>

Quando você cria um arquivamento, EventBridge gera uma [regra gerenciada](eb-rules.md#eb-rules-managed) no barramento de eventos de origem que impede que eventos repetidos sejam enviados para o arquivamento. A regra gerenciada adiciona o seguinte padrão de evento, que filtra os eventos com base no fato de conterem um `replay-name` campo. (EventBridgeadiciona esse campo aos eventos quando os reproduz.)

```
{
  "replay-name": [{
    "exists": false
  }]
}
```

## Reprodução dos eventos de um arquivamento
<a name="eb-archive-replay"></a>

Depois de criar um arquivo, é possível reproduzir eventos do arquivo. Por exemplo, se atualizar uma aplicação com funcionalidades adicionais, poderá reproduzir eventos históricos para garantir que os eventos sejam reprocessados para manter a aplicação consistente. Também é possível usar um arquivo para reproduzir eventos para novas funcionalidades.

Ao reproduzir eventos de um arquivo, você especifica:
+ O período do qual selecionar eventos a serem reproduzidos.
+ Opcionalmente, regras específicas no barramento de eventos para as quais os eventos selecionados EventBridge devem ser reproduzidos.

Os eventos de arquivo só podem ser reproduzidos para o barramento de eventos de origem.

Você pode ter no máximo dez replays simultâneos ativos por conta e por AWS região.

A reprodução de eventos não os remove do arquivo. Você pode repetir eventos em vários replays. EventBridge só remove eventos quando eles excedem o período de retenção do arquivo, ou você exclui o próprio arquivo.

EventBridge exclui repetições após 90 dias.

Você poderá cancelar reproduções enquanto o status for `Starting` ou `Running`. Para obter mais informações, consulte [Cancelamento de reproduções de eventos](eb-replay-cancel.md).

### Identificação de eventos que foram reproduzidos
<a name="eb-archive-replay-event-transform"></a>

Quando EventBridge envia um evento de um arquivo para o barramento de eventos de origem durante uma repetição, ele adiciona um campo de metadados ao evento,`replay-name`, que contém o nome da repetição. Você pode usar esse campo para identificar eventos reproduzidos quando eles são entregues em um destino.

EventBridge também usa esse campo para garantir que os eventos repetidos não sejam enviados para os arquivos.

### Considerações durante a reprodução de eventos a partir de um arquivo
<a name="eb-archive-replay-considerations"></a>

Tenha em mente as seguintes considerações ao reproduzir eventos de um arquivo:
+ Talvez haja um atraso entre um evento ser recebido em um barramento de eventos e o evento chegando no arquivamento. É recomendado adiar a repetição dos eventos arquivados por 10 minutos para garantir que todos os eventos sejam repetidos.
+ Os eventos não são necessariamente reproduzidos na mesma ordem em que foram adicionados ao arquivo. Uma repetição processa eventos em repetições com base na hora do evento e os reproduz em intervalos de um minuto. Se você especificar uma hora de início e uma hora de término do evento que cubra um intervalo de 20 minutos, os eventos serão reproduzidos primeiro a partir do primeiro minuto desse intervalo de 20 minutos. Em seguida, os eventos do segundo minuto são repetidos.
+ Você pode usar a `DescribeReplay` operação da EventBridge API para determinar o progresso de uma repetição. `EventLastReplayedTime`retorna a data e hora do último evento repetido.
+ Os eventos são reproduzidos com base no limite de `PutEvents` transações por segundo da AWS conta, mas separados dele. Você pode solicitar um aumento no limite para PutEvents. Para obter mais informações, consulte [Amazon EventBridge Quotas](https://docs.aws.amazon.com/eventbridge/latest/userguide/cloudwatch-limits-eventbridge.html).

 O seguinte vídeo demonstra o uso do Arquivamento e Rreprodução:




# Criação de arquivamentos de eventos no Amazon EventBridge
<a name="eb-archive-event"></a>

Ao criar um arquivamento no EventBridge, você pode determinar quais eventos são enviados para o arquivo especificando um [padrão de evento](eb-event-patterns.md). O EventBridge envia eventos que correspondem ao padrão do evento para o arquivo. Também é definido o período de retenção para armazenar eventos no arquivo antes que eles sejam descartados.

Você também pode criar arquivamentos como parte da [criação de um barramento de eventos](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-event-bus.html). Esses arquivamentos têm uma política de retenção indefinida e nenhum filtro de eventos, embora isso possa ser [atualizado](https://docs.aws.amazon.com/eventbridge/latest/userguide/event-bus-update-archive.html) assim que o arquivamento é criado.

**Topics**
+ [Definir o arquivo](#eb-create-archive-define)
+ [Criar o padrão de eventos (opcional)](#eb-create-archive-event-pattern)

## Definir o arquivo
<a name="eb-create-archive-define"></a>

Primeiro, insira um nome e uma descrição para o arquivamento e especifique o barramento de eventos do qual ele recebe eventos. Você também pode definir por quanto tempo reter eventos no arquivamento.

**Para definir o arquivamento**

1. Abra o console do Amazon EventBridge em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Navegue até o barramento de eventos de origem ou crie diretamente o arquivamento:
   + No painel de navegação, selecione **Event buses (Barramentos de eventos)**.

     Na página de detalhes do barramento de eventos, selecione a guia **Arquivos**.
   + No painel de navegação, selecione **Arquivos**.

1. Escolha **Criar arquivo**.

1. Em **Detalhe do arquivo**, insira um nome e, como opção, uma descrição para o arquivamento. 

    O nome deve ser exclusivo na sua conta na sua região selecionada. Não é possível alterar o nome depois de criar o conjunto de IP.

1. Para **Origem**, selecione o barramento de eventos cujos eventos você deseja enviar para o arquivamento

   Se você tiver navegado em uma página de detalhes do barramento de eventos existente, o nome desse barramento de eventos será exibido por padrão.

   Você não poderá alterar o barramento de eventos de origem depois de ter criado o arquivamento.

1. Para **Período de retenção**, especifique por quanto tempo reter os eventos no arquivamento:
   + Escolha **Indefinido** para reter os eventos no arquivo e nunca excluí-los.
   + Para um período de retenção definido, insira o número de dias após os quais o EventBridge deve excluir os eventos do arquivo.

1. Para **Criptografia**, escolha a chave KMS para o EventBridge usar ao criptografar os eventos armazenados no arquivamento.
**Importante**  
Se você tiver especificado que o EventBridge use uma chave gerenciada pelo cliente para criptografar o barramento de eventos de origem, será altamente recomendável você também especificar uma chave gerenciada pelo cliente para qualquer arquivo do barramento de eventos.
   + Escolha **Usar Chave pertencente à AWS** para o EventBridge criptografar os dados usando uma Chave pertencente à AWS.

     Esta Chave pertencente à AWS é uma chave KMS de propriedade do EventBridge e que gerencia para uso em várias contas da AWS. Em geral, a menos que seja necessário auditar ou controlar a chave de criptografia que protege os recursos, uma Chave pertencente à AWS é uma boa escolha. 

     Esse é o padrão.
   + Escolha **Usar chave gerenciada pelo cliente** para o EventBridge criptografar os dados usando a chave gerenciada pelo cliente especificada ou criada por você.

     As chaves gerenciadas pelo cliente são KMS na conta da AWS que você cria, detém e gerencia. Você tem controle total sobre essas chaves KMS.

     1. Especifique uma chave gerenciada pelo cliente existente ou escolha **Criar uma nova chave KMS**.

       O EventBridge exibe o status da chave e todos os aliases de chave que tenham sido associados à chave gerenciada pelo cliente especificada.

1. Escolha **Próximo**.

## Criar o padrão de eventos (opcional)
<a name="eb-create-archive-event-pattern"></a>

Em seguida, como uma etapa opcional, você poderá criar um padrão de evento para filtrar quais eventos o EventBridge envia para o arquivamento. Para fazer isso, especifique a origem do evento, escolha a base para o padrão do evento e defina os atributos e valores aos quais corresponder. Também é possível gerar o padrão de evento em JSON e testá-lo em um evento de amostra.

Para obter mais informações sobre padrões de eventos, consulte [](eb-event-patterns.md).

**Para criar o padrão de eventos**

1. Em **Origem do evento**, escolha **Eventos da AWS ou eventos de parceiro do EventBridge**.

1. (Opcional) Na seção **Eventos de amostra**, escolha um **Tipo de evento de amostra** com o qual deseja testar seu padrão de evento. 

   Os seguintes tipos de eventos estão disponíveis:
   + **Eventos da AWS**: selecione entre os eventos emitidos pelos Serviços da AWS compatíveis.
   + **Eventos de parceiros do EventBridge**: selecione entre os eventos emitidos por serviços de terceiros que são compatíveis com o EventBridge, como o Salesforce.
   + **Inserir o meu próprio**: insira o seu próprio evento em texto JSON.

     Também é possível usar um evento da AWS ou um evento de um parceiro como ponto de partida para criar seu próprio evento personalizado.

     1. Selecione **Eventos da AWS** ou **Eventos de parceiros do EventBridge**.

     1. Use o menu suspenso **Exemplos de eventos** para selecionar o evento que deseja usar como ponto de partida para seu evento personalizado.

        O EventBridge exibe o evento de amostra.

     1. Selecione **Copiar**.

     1. Selecione **Inserir meu próprio** para o **Tipo de evento**.

     1. Exclua a estrutura de eventos de amostra no painel de edição JSON e cole o evento da AWS ou do parceiro no lugar.

     1. Edite o JSON do evento para criar seu próprio evento de amostra.

1. Escolha um **Método de criação**. Também é possível criar um padrão de evento a partir de um esquema ou modelo do EventBridge ou criar um padrão de evento personalizado.

------
#### [ Existing schema ]

   Para usar um esquema do EventBridge existente para criar o padrão de evento, faça o seguinte:

   1. Na seção **Método de criação**, em **Método**, selecione **Usar esquema**.

   1. Na seção **Padrão de evento**, em **Tipo de esquema**, selecione **Selecionar esquema do registro do esquema**.

   1. Em **Registro do esquema**, escolha a caixa suspensa e insira o nome de um registro do esquema, como `aws.events`. Também é possível selecionar uma opção na lista suspensa que aparece.

   1. Em **Esquema**, escolha a caixa suspensa e insira o nome do esquema a ser usado. Por exemplo, `aws.s3@ObjectDeleted`. Também é possível selecionar uma opção na lista suspensa que aparece.

   1. Na seção **Modelos**, escolha o botão **Editar** ao lado de qualquer atributo para abrir suas propriedades. Defina os campos **Relacionamento** e **Valor** conforme necessário e escolha **Definir** para salvar o atributo.
**nota**  
Para obter informações sobre a definição de um atributo, escolha o ícone **Informações** ao lado do nome do atributo. Para obter uma referência sobre como definir propriedades de atributos em seu evento, abra a seção **Observação** da caixa de diálogo de propriedades de atributos.  
Para excluir as propriedades de um atributo, escolha o botão **Editar** para esse atributo e escolha **Limpar**.

   1. Escolha **Gerar padrão de evento em JSON** para gerar e validar seu padrão de evento como texto JSON. 

   1. (Opcional) Para testar o evento de amostra em relação ao seu padrão de teste, escolha **Padrão de teste**. 

      O EventBridge exibe uma caixa de mensagem informando se seu evento de amostra corresponde ao padrão do evento.

      Também é possível escolher uma das seguintes opções:
      + **Copiar**: copie o padrão do evento para a área de transferência do seu dispositivo.
      + **Aprimorar:** facilita a leitura do texto JSON adicionando quebras de linha, tabulações e espaços.

------
#### [ Custom schema ]

   Para escrever um esquema personalizado e convertê-lo em um padrão de evento, faça o seguinte:

   1. Na seção **Método de criação**, em **Método**, escolha **Usar esquema**.

   1. Na seção **Padrão de evento**, em **Tipo de esquema**, escolha **Inserir esquema**.

   1. Insira o seu esquema na caixa de texto. É preciso formatar o esquema como texto JSON válido.

   1. Na seção **Modelos**, escolha o botão **Editar** ao lado de qualquer atributo para abrir suas propriedades. Defina os campos **Relacionamento** e **Valor** conforme necessário e escolha **Definir** para salvar o atributo.
**nota**  
Para obter informações sobre a definição de um atributo, escolha o ícone **Informações** ao lado do nome do atributo. Para obter uma referência sobre como definir propriedades de atributos em seu evento, abra a seção **Observação** da caixa de diálogo de propriedades de atributos.  
Para excluir as propriedades de um atributo, escolha o botão **Editar** para esse atributo e escolha **Limpar**.

   1. Escolha **Gerar padrão de evento em JSON** para gerar e validar seu padrão de evento como texto JSON. 

   1. (Opcional) Para testar o evento de amostra em relação ao seu padrão de teste, escolha **Padrão de teste**. 

      O EventBridge exibe uma caixa de mensagem informando se seu evento de amostra corresponde ao padrão do evento.

      Também é possível escolher uma das seguintes opções:
      + **Copiar**: copie o padrão do evento para a área de transferência do seu dispositivo.
      + **Aprimorar:** facilita a leitura do texto JSON adicionando quebras de linha, tabulações e espaços.

------
#### [ Event pattern ]

   Para escrever um padrão de evento personalizado no formato JSON, faça o seguinte:

   1. Na seção **Método de criação**, em **Método**, escolha **Padrão personalizado (editor JSON)**.

   1. Em **Padrão de evento**, insira seu padrão de evento personalizado em texto formatado em JSON. 

   1. (Opcional) Para testar o evento de amostra em relação ao seu padrão de teste, escolha **Padrão de teste**. 

      O EventBridge exibe uma caixa de mensagem informando se seu evento de amostra corresponde ao padrão do evento.

      Também é possível escolher uma das seguintes opções:
      + **Copiar**: copie o padrão do evento para a área de transferência do seu dispositivo.
      + **Aprimorar:** facilita a leitura do texto JSON adicionando quebras de linha, tabulações e espaços.
      + **Formulário de padrão de evento**: abre o padrão de evento no Criador de padrões. Se o padrão não puder ser renderizado no Criador do Padrão no estado em que se encontra, o EventBridge avisará antes de abrir o Criador do Padrão.

------

1. Escolha **Criar arquivo**.

Para confirmar se os eventos foram enviados com êxito para o arquivamento, você pode usar a operação [https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_DescribeArchive.html](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_DescribeArchive.html) da API do EventBridge para ver se a `EventCount` reflete o número de eventos no arquivamento. Se for 0, não há eventos no arquivo.

# Atualização de arquivos nos ônibus de EventBridge eventos da Amazon
<a name="event-bus-update-archive"></a>

Você pode atualizar o seguinte: 
+ Descrição do arquivo
+ Um padrão de evento usado para filtrar quais eventos são enviados para o arquivamento.
+ O período de retenção dos eventos.
+ O AWS KMS key usado para criptografia de eventos.

  Para obter mais informações, consulte [Criptografia de arquivamentos](encryption-archives.md).

Você não poderá alterar o nome ou o barramento de eventos de origem de um arquivamento depois que ele tiver sido criado.

**nota**  
A descoberta de esquemas não é compatível com barramentos de eventos criptografados que usem uma chave gerenciada pelo cliente. Para habilitar a descoberta de esquemas em um barramento de eventos, opte por usar uma Chave pertencente à AWS. Para obter mais informações, consulte [Opções de chave KMS](eb-encryption-at-rest-key-options.md).

**Para atualizar um arquivo (console)**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Navegue diretamente até o arquivo ou a partir do barramento de eventos de origem:
   + No painel de navegação, selecione **Event buses (Barramentos de eventos)**.

     Na página de detalhes do barramento de eventos, selecione a guia **Arquivos**.
   + No painel de navegação, selecione **Arquivos**.

1. Selecione o arquivamento e **Editar**.

1. Atualize o arquivamento.

**Para atualizar um arquivamento para um barramento de eventos (AWS CLI)**
+ Use [update-archive](https://docs.aws.amazon.com/cli/latest/reference/events/update-archive.html).

# Excluindo arquivos de eventos na Amazon EventBridge
<a name="eb-archive-delete"></a>

Quando você exclui um arquivo, EventBridge exclui os seguintes recursos:
+ O arquivamento e todos os eventos que ele contém.
+ O padrão do evento, se houver, especificado para o arquivamento.
+ A regra EventBridge gerenciada gerada para o arquivamento.

**Para excluir um arquivamento de um barramento de eventos (console)**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Navegue diretamente até o arquivo ou a partir do barramento de eventos de origem:
   + No painel de navegação, selecione **Event buses (Barramentos de eventos)**.

     Na página de detalhes do barramento de eventos, selecione a guia **Arquivos**.
   + No painel de navegação, selecione **Arquivos**.

1. Escolha o barramento de eventos que contém o arquivamento que você deseja excluir.

1. Na página de detalhes do barramento de eventos, selecione a guia **Arquivamentos**.

1. Selecione o arquivamento e **Excluir**.

**Para excluir um arquivo (AWS CLI)**
+ Use [delete-archive](https://docs.aws.amazon.com/cli/latest/reference/events/delete-archive.html).

# Criação de replays de eventos arquivados na Amazon EventBridge
<a name="eb-replay-archived-event"></a>

Ao iniciar uma nova repetição, você especifica um período de tempo para o evento que deseja reenviar EventBridge para o barramento de eventos de origem. Você também pode especificar EventBridge para enviar os eventos para regras específicas.

**Para iniciar a reprodução de um evento (console)**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Navegue diretamente até as reproduções ou pelo arquivamento que você deseja reproduzir:
   + No painel de navegação, selecione **Arquivos**.

     Na página **Arquivos**, escolha o arquivamento e **Reproduzir**.
   + No painel de navegação, escolha **Reproduções**.

     Escolha **Iniciar nova repetição**.

1. Informe um **Nome** para a reprodução e, opcionalmente, uma **Descrição**.

1. Em **Origem**, selecione o arquivo do qual reproduzir eventos.

1. Para o destino, é possível reproduzir eventos somente no mesmo barramento de eventos que emitiu os eventos.

1. Em **Especificar regras**, especifique uma das seguintes:
   + Escolha **Todas as regras** para repetir os eventos de acordo com todas as regras.
   + Escolha **Especificar regras** e selecione a regra ou as regras para as quais reproduzir os eventos.

1. Em **Período de tempo de repetição**, especifique a **data**, a **hora** e o **fuso horário** para a **hora de início** e a **hora de término**. 

   Somente eventos que ocorreram entre a hora de **início e a hora** de **hora de término** são reproduzidos. 

1. Selecione **Iniciar repetição**.

**Para iniciar uma reprodução (AWS CLI)**
+ Use [start-replay](https://docs.aws.amazon.com/cli/latest/reference/events/start-replay.html).

# Cancelamento de repetições de eventos arquivados na Amazon EventBridge
<a name="eb-replay-cancel"></a>

Se iniciar uma reprodução e depois quiser pará-la, você poderá cancelá-la com o status `Starting` ou `Running`.

**Para cancelar uma reprodução (console)**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação à esquerda, escolha **Reproduções**.

1. Escolha a reprodução a ser cancelada.

1. Escolha **Cancelar**.

**Para cancelar uma reprodução (AWS CLI)**
+ Use [cancel-replay](https://docs.aws.amazon.com/cli/latest/reference/events/cancel-replay.html).

# Tornando os aplicativos tolerantes a falhas regionais com endpoints globais em EventBridge
<a name="eb-global-endpoints"></a>

Você pode melhorar a disponibilidade do seu aplicativo com os endpoints EventBridge globais da Amazon. Os endpoints globais ajudam a tornar sua aplicação tolerante a falhas regionais sem custo adicional. Para começar, atribuia uma verificação de integridade do Amazon Route 53 ao endpoint. Quando o failover é iniciado, a verificação de integridade relata um estado "não íntegro". Poucos minutos após o início do failover, todos os [eventos](eb-events.md) personalizados são roteados para um [barramento de eventos](eb-event-bus.md) na região secundária e processados por esse barramento de eventos. Depois que a verificação de integridade relata um estado "saudável", os eventos são processados pelo barramento de eventos na região principal.

Ao usar endpoints globais, é possível ativar a [replicação de eventos](#eb-ge-event-replication). A replicação de eventos envia todos os eventos personalizados para os barramentos de eventos nas regiões primária e secundária usando regras gerenciadas.

**nota**  
Se estiver usando barramentos personalizados, será preciso ter um barramento personalizado em cada região com o mesmo nome e na mesma conta para que o failover funcione corretamente.

## Objetivos de tempo de recuperação e ponto de recuperação
<a name="eb-ge-rpo-rto"></a>

O objetivo de tempo de recuperação (RTO) é o tempo necessário para que a região secundária comece a receber eventos após uma falha. Para o RTO, o tempo inclui o período para acionar CloudWatch alarmes e atualizar os status das verificações de saúde do Route 53. O objetivo de ponto de recuperação (RPO) é a medida dos dados que não serão processados durante uma falha. No RPO, o tempo inclui eventos que não são replicados para a região secundária e ficam presos na região primária até que o serviço ou a região se recuperem. Com endpoints globais, se seguir nossa orientação prescritiva para configuração de alarmes, poderá esperar que o RTO e o RPO sejam de 360 segundos com um máximo de 420 segundos.

## Replicação de eventos
<a name="eb-ge-event-replication"></a>

Os eventos são processados na região secundária de forma assíncrona. Isto significa que não é garantido que os eventos sejam processados ao mesmo tempo nas duas regiões. Quando o failover é acionado, os eventos são processados pela região secundária e serão processados pela região primária quando estiverem disponíveis. Habilitar a replicação de eventos aumentará seus custos mensais. Para obter mais informações, consulte os [ EventBridgepreços da Amazon](https://aws.amazon.com/eventbridge/pricing)

É recomendado ativar a replicação de eventos ao configurar endpoints globais pelos seguintes motivos:
+ A replicação de eventos ajuda a verificar se seus endpoints globais estão configurados corretamente. Isto ajuda a garantir que você esteja coberto em caso de failover.
+ A replicação de eventos é necessária para se recuperar automaticamente de um evento de failover. Se não tiver a replicação de eventos ativada, precisará redefinir manualmente a verificação de integridade do Route 53 para "íntegra" antes que os eventos retornem à região principal.

### Carga útil de eventos replicada
<a name="eb-ge-event-replication-ep"></a>

A seguir, um exemplo de carga útil de evento replicado.

**nota**  
Em `region`, a região da qual o evento foi replicado é listada.

```
{
    "version": "0",
    "id": "a908baa3-65e5-ab77-367e-527c0e71bbc2",
    "detail-type": "Test",
    "source": "test.service.com",
    "account": "0123456789",
    "time": "1900-01-01T00:00:00Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:events:us-east-1:0123456789:endpoint/MyEndpoint"
    ],
    "detail": {
        "a": "b"
    }
}
```

## Trabalhando com endpoints globais usando um SDK AWS
<a name="eb-ge-sdk-update"></a>

**nota**  
Em breve, compatibilidade com C\$1\$1.

Ao usar um AWS SDK para trabalhar com endpoints globais, lembre-se do seguinte:
+ Você precisará ter a biblioteca AWS Common Runtime (CRT) instalada para seu SDK específico. Se não tiver o CRT instalado, receberá uma mensagem de exceção indicando o que precisa ser instalado. Para saber mais, consulte:
  + [Bibliotecas do AWS Common Runtime (CRT)](https://docs.aws.amazon.com/sdkref/latest/guide/common-runtime.html)
  + [lajes/aws-crt-java](https://github.com/awslabs/aws-crt-java)
  + [lajes/aws-crt-nodejs](https://github.com/awslabs/aws-crt-nodejs)
  + [lajes/aws-crt-python](https://github.com/awslabs/aws-crt-python)
+ Depois de criar um endpoint global, será preciso adicionar o `endpointId` e o `EventBusName` a todas as chamadas `PutEvents` que usar.
+ Endpoints globais são compatíveis com o Signature versão 4A. Esta versão do SigV4 permite que as solicitações sejam assinadas para várias Regiões da AWS. Isso é útil em operações de API que podem resultar em acesso a dados de uma das várias regiões. Ao usar o AWS SDK, você fornece suas credenciais e as solicitações para endpoints globais usarão o Signature versão 4A sem configuração adicional. Para obter mais informações sobre SigV4A, consulte [Assinatura de solicitações de API da AWS](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html ) na * Referência geral da AWS *.

  Se você solicitar credenciais temporárias do AWS STS endpoint global (sts.amazonaws.com), vende credenciais que, por padrão, não são AWS STS compatíveis com SigV4a. Consulte [Gerenciando AWS STS em uma AWS região](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) no *Guia do AWS Identity and Access Management usuário* para obter mais informações.

## Regiões disponíveis
<a name="eb-ge-avail-regions"></a>

As seguintes regiões são compatíveis com endpoints globais:
+ Leste dos EUA (Norte da Virgínia)
+ Leste dos EUA (Ohio)
+ Oeste dos EUA (N. da Califórnia)
+ Oeste dos EUA (Oregon)
+ Canadá (Central)
+ Europa (Frankfurt)
+ Europa (Irlanda)
+ Europa (Londres)
+ Europa (Milão)
+ Europa (Paris)
+ Europa (Estocolmo)
+ Ásia-Pacífico (Mumbai)
+ Ásia-Pacífico (Osaka)
+ Ásia-Pacífico (Seul)
+ Ásia-Pacífico (Singapura)
+ Ásia-Pacífico (Sydney)
+ Ásia-Pacífico (Tóquio)
+ América do Sul (São Paulo)

# Criação de um endpoint global na Amazon EventBridge
<a name="eb-ge-create-endpoint"></a>

Para configurar um endpoint global, conclua as seguintes etapas:

1. Verifique se você tem barramentos e regras de eventos correspondentes na região primária e secundária.

1. Crie uma [verificação de integridade do Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/health-checks-creating.html) para monitorar seus barramentos de eventos. Para obter ajuda na criação de sua verificação de integridade, escolha **Nova verificação de integridade** ao criar seu endpoint global.

1. Crie seu endpoint global.

Depois de configurar a verificação de integridade do Route 53, é possível criar um endpoint global.

## Para criar um endpoint global usando o console
<a name="eb-ge-create-endpoint-console"></a>

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação, escolha **Endpoints globais**.

1. Escolha **Criar endpoint**.

1. Insira um nome e uma descrição para o endpoint.

1. Em **Barramento de eventos na região principal**, escolha o barramento de eventos ao qual deseja que o endpoint fosse associado.

1. Em **Região secundária**, escolha a região para a qual gostaria de direcionar os eventos no caso de um failover.
**nota**  
O **barramento de eventos na região secundária** é preenchido automaticamente e não é editável.

1. Na **verificação de integridade do Route 53 para acionar o failover e a recuperação**, escolha a verificação de integridade que o endpoint monitorará. Se você ainda não tiver uma verificação de saúde, escolha **Nova verificação de integridade** para abrir o CloudFormation console e criar uma verificação de saúde usando um CloudFormation modelo.
**nota**  
A falta de dados fará com que a verificação de integridade falhe. Se você só precisar enviar eventos de forma intermitente, considere usar um mais longo **MinimumEvaluationPeriod**ou tratar os dados perdidos como “ausentes” em vez de “violados”.

1. (Opcional) Para **Replicação de eventos**, faça o seguinte:

   1. Selecione **Replicação de eventos ativada**.

   1. Em **Perfil de execução**, escolha se deseja criar um novo perfil do AWS Identity and Access Management ou usar um perfil existente. Faça o seguinte:
      + Escolha **Create a new role for this specific resource (Criar uma função para este recurso específico)**. Opcionalmente, você pode atualizar o **nome do perfil** para criar um novo perfil.
      + Escolha **Usar perfil existente**. Em **Perfil de execução**, escolha o perfil desejado a ser usado.

1. Escolha **Criar**.

## Para criar um endpoint global usando a API
<a name="eb-ge-create-endpoint-api"></a>

Para criar um endpoint global usando a EventBridge API, consulte [CreateEndpoint](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_CreateEndpoint.html)na Amazon EventBridge API Reference.

## Para criar um endpoint global usando CloudFormation
<a name="eb-ge-create-endpoint-cfn"></a>

Para criar um endpoint global usando a AWS CloudFormation API, consulte [AWS::Events::Endpoints](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-endpoint.html)o Guia do AWS CloudFormation usuário.

# Práticas recomendadas para endpoints globais do Amazon EventBridge
<a name="eb-ge-best-practices"></a>

As práticas recomendadas a seguir são aconselháveis ao configurar endpoints globais.

## Habilitar a replicação de eventos
<a name="eb-ge-bp-enable-replication"></a>

É altamente recomendável que ativar a replicação e processar seus eventos na região secundária atribuída ao seu endpoint global. Isto garante que sua aplicação na região secundária seja configurada corretamente. Também é preciso ativar a replicação para garantir a recuperação automática na região principal após a mitigação de um problema.

Os IDs de eventos podem mudar nas chamadas de API. Portanto, correlacionar eventos entre regiões exige que exista um identificador exclusivo e imutável. Os consumidores também devem ser projetados com a idempotência em mente. Dessa forma, se estiver replicando eventos ou reproduzindo-os de arquivos, não haverá efeitos colaterais do processamento dos eventos nas duas regiões.

## Como evitar o controle de utilização de eventos
<a name="eb-ge-bp-throttling"></a>

Para evitar que os eventos sejam limitados, é recomendado atualizar seus limites `PutEvents` e os limites de destino para que sejam consistentes em todas as regiões.

## Como usar métricas de assinantes nas verificações de integridade do Amazon Route 53
<a name="eb-ge-bp-sub-metrics"></a>

Evite incluir métricas de assinantes em suas verificações de integridade do Amazon Route 53. Incluir essas métricas pode fazer com que seu publicador faça failover para as regiões secundárias se um assinante encontrar um problema, apesar de todos os outros assinantes permanecerem saudáveis na região primária. Se um de seus assinantes não conseguir processar eventos na região principal, a replicação deve ser ativada para garantir que seu assinante na região secundária possa processar eventos com êxito.

# Configurar a verificação de integridade do Route 53 para endpoints globais do EventBridge
<a name="eb-ge-cfn"></a>

Ao usar endpoints globais, você precisa fazer uma verificação de integridade do Route 53 para monitorar o status de suas regiões. O modelo a seguir define um alarme do [Amazon CloudWatch](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html) e o usa para definir [uma verificação de integridade do Route 53](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html).

**Topics**
+ [Modelo do CloudFormation para definir uma verificação de integridade do Route 53](#eb-ge-cfn-template)
+ [Propriedades do modelo de alarmes do CloudWatch](#eb-ge-cfn-cw-alarm-definitions)
+ [Propriedades do modelo de verificações de integridade do Route 53](#eb-ge-cfn-health-check-definitions)

## Modelo do CloudFormation para definir uma verificação de integridade do Route 53
<a name="eb-ge-cfn-template"></a>

Use o modelo a seguir para definir sua verificações de integridade do Route 53.

```
Description: |-
  Global endpoints health check that will fail when the average Amazon EventBridge 
  latency is above 30 seconds for a duration of 5 minutes. Note, missing data will 
  cause the health check to fail, so if you only send events intermittently, consider 
  changing the heath check to use a longer evaluation period or instead treat missing 
  data as 'missing' instead of 'breaching'.

Metadata:
  AWS::CloudFormation::Interface:
    ParameterGroups: 
      - Label: 
          default: "Global endpoint health check alarm configuration"
        Parameters:
          - HealthCheckName
          - HighLatencyAlarmPeriod
          - MinimumEvaluationPeriod
          - MinimumThreshold
          - TreatMissingDataAs
    ParameterLabels:
      HealthCheckName:
        default: Health check name
      HighLatencyAlarmPeriod:
        default: High latency alarm period
      MinimumEvaluationPeriod:
        default: Minimum evaluation period
      MinimumThreshold:
        default: Minimum threshold
      TreatMissingDataAs:
        default: Treat missing data as

Parameters:
  HealthCheckName:
    Description: Name of the health check
    Type: String
    Default: LatencyFailuresHealthCheck
  HighLatencyAlarmPeriod:
    Description: The period, in seconds, over which the statistic is applied. Valid values are 10, 30, 60, and any multiple of 60.
    MinValue: 10
    Type: Number
    Default: 60
  MinimumEvaluationPeriod:
    Description: The number of periods over which data is compared to the specified threshold. You must have at least one evaluation period.
    MinValue: 1
    Type: Number
    Default: 5
  MinimumThreshold:
    Description: The value to compare with the specified statistic.
    Type: Number
    Default: 30000
  TreatMissingDataAs:
    Description: Sets how this alarm is to handle missing data points.
    Type: String
    AllowedValues:
      - breaching
      - notBreaching
      - ignore
      - missing
    Default: breaching  

Mappings:
  "InsufficientDataMap":
    "missing":
      "HCConfig": "LastKnownStatus"
    "breaching":
      "HCConfig": "Unhealthy"  

Resources:
  HighLatencyAlarm:
      Type: AWS::CloudWatch::Alarm
      Properties:
        AlarmDescription: High Latency in Amazon EventBridge
        MetricName: IngestionToInvocationStartLatency
        Namespace: AWS/Events
        Statistic: Average
        Period: !Ref HighLatencyAlarmPeriod
        EvaluationPeriods: !Ref MinimumEvaluationPeriod
        Threshold: !Ref MinimumThreshold
        ComparisonOperator: GreaterThanThreshold
        TreatMissingData: !Ref TreatMissingDataAs

  LatencyHealthCheck:
      Type: AWS::Route53::HealthCheck
      Properties:
        HealthCheckTags:
          - Key: Name
            Value: !Ref HealthCheckName
        HealthCheckConfig:
          Type: CLOUDWATCH_METRIC
          AlarmIdentifier:
            Name:
              Ref: HighLatencyAlarm
            Region: !Ref AWS::Region
          InsufficientDataHealthStatus: !FindInMap [InsufficientDataMap, !Ref TreatMissingDataAs, HCConfig]

Outputs:
  HealthCheckId:
    Description: The identifier that Amazon Route 53 assigned to the health check when you created it.
    Value: !GetAtt LatencyHealthCheck.HealthCheckId
```

Os IDs de eventos podem mudar nas chamadas de API. Portanto, correlacionar eventos entre regiões exige que exista um identificador exclusivo e imutável. Os consumidores também devem ser projetados com a idempotência em mente. Dessa forma, se estiver replicando eventos ou reproduzindo-os de arquivos, não haverá efeitos colaterais do processamento dos eventos nas duas regiões.

## Propriedades do modelo de alarmes do CloudWatch
<a name="eb-ge-cfn-cw-alarm-definitions"></a>

**nota**  
Para todos os campos **editable**, considere seu throughput por segundo. Se só envia eventos de forma intermitente, considere alterar a verificação de integridade para usar um período de avaliação mais longo ou, em vez disso, tratar os dados ausentes como se fossem `missing` em vez de `breaching`. 

As seguintes propriedades são usadas na seção de alarme do CloudWatch do modelo:


| Métrica | Descrição | 
| --- | --- | 
|  `AlarmDescription`  |  A descrição do alarme. Padrão: **High Latency in Amazon EventBridge**  | 
|  `MetricName`  |  O nome da métrica associada ao alarme. Isso é necessário para um alarme com base em uma métrica. Para um alarme com base em uma expressão matemática, use `Metrics`, e você não pode especificar `MetricName`. Padrão: IngestionToInvocationStartLatency  | 
|  `Namespace`  |  O namespace da métrica associada ao alarme. Isso é necessário para um alarme com base em uma métrica. Para um alarme com base em uma expressão matemática, não é possível especificar `Namespace`, em vez disso, use `Metrics`. Padrão: `AWS/Events`  | 
|  `Statistic`  |  A estatística da métrica associada ao alarme, diferente do percentil. Padrão: médio  | 
|  `Period`  |  O período, em segundos, durante o qual a estatística é aplicada. Isso é necessário para um alarme com base em uma métrica. Os valores válidos são 10, 30, 60 e qualquer múltiplo de 60. Padrão: **60**  | 
|  `EvaluationPeriods`  |  O número de períodos com os quais os dados são comparados ao limite especificado. Se você estiver configurando um alarme que exija que vários pontos de dados consecutivos estejam em violação para acionar o alarme, esse valor especificará esse número. Se você estiver definindo um alarme “M de N”, esse valor será o N e `DatapointsToAlarm` será o M. Padrão: **5**  | 
|  `Threshold`  |  O valor para comparar com a estatística especificada. Padrão: **30,000**  | 
|  `ComparisonOperator`  |  A operação aritmética a ser usada ao comparar a estatística e o limite especificados. O valor da estatística especificada é usado como o primeiro operando. Padrão: `GreaterThanThreshold`  | 
|  `TreatMissingData`  |  Define como esse alerta deve lidar com pontos de dados ausentes. Valores válidos: `breaching`, `notBreaching`, `ignore` e `missing` Padrão: `breaching`  | 

## Propriedades do modelo de verificações de integridade do Route 53
<a name="eb-ge-cfn-health-check-definitions"></a>

**nota**  
Para todos os campos **editable**, considere seu throughput por segundo. Se só envia eventos de forma intermitente, considere alterar a verificação de integridade para usar um período de avaliação mais longo ou, em vez disso, tratar os dados ausentes como se fossem `missing` em vez de `breaching`. 

As seguintes propriedades são usadas na seção de verificação de integridade do Route 53 do modelo:


| Métrica | Descrição | 
| --- | --- | 
|  `HealthCheckName`  |  O nome da verificação de integridade. Padrão: **LatencyFailuresHealthCheck**  | 
|  `InsufficientDataHealthStatus`  |  Quando o CloudWatch tem dados insuficientes sobre a métrica para determinar o estado do alarme, o status que você deseja que o Amazon Route 53 atribua à verificação de integridade Valores válidos: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/eventbridge/latest/userguide/eb-ge-cfn.html) Padrão: não íntegro Este campo é atualizado com base na entrada do campo `TreatMissingData`. If `TreatingMissingData` for definido como `Missing`, será atualizado para `LastKnownStatus`. Se `TreatingMissingData` for definido como `Breaching`, será atualizado para `Unhealthy`.  | 

# Configurando registros para ônibus de EventBridge eventos da Amazon
<a name="eb-event-bus-logs"></a>

Você pode configurar EventBridge para enviar registros detalhando como um barramento de eventos está processando eventos, para ajudar na solução de problemas e na depuração.

Você pode selecionar os seguintes AWS serviços como *destinos de registro* para os quais EventBridge entregam registros para o barramento de eventos especificado:
+  CloudWatch Registros da Amazon

  EventBridge entrega registros para o grupo de CloudWatch registros de registros especificado. 

  Use o CloudWatch Logs para centralizar os registros de todos os seus sistemas, aplicativos e AWS serviços que você usa, em um único serviço altamente escalável. Para obter mais informações, consulte Como [trabalhar com grupos e fluxos de registros](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html) no *Guia do usuário do Amazon CloudWatch Logs*.
+ Amazon Data Firehose 

  EventBridge entrega registros para um stream de entrega do Firehose. 

  O Amazon Data Firehose é um serviço totalmente gerenciado para fornecer dados de streaming em tempo real para destinos como determinados AWS serviços, bem como qualquer endpoint HTTP personalizado ou endpoints HTTP de propriedade de provedores de serviços terceirizados compatíveis. Para obter mais informações, consulte [Creating an Amazon Data Firehose delivery stream](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html) no *Guia do desenvolvedor do Amazon Data Firehose*.
+ Amazon S3 

  EventBridge entrega registros como objetos do Amazon S3 para o bucket especificado.

  O Amazon S3 é um serviço de armazenamento de objetos que oferece escalabilidade, disponibilidade de dados, segurança e performance líderes do setor. Para obter mais informações, consulte [Fazer upload, baixar e trabalhar com objetos no Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/uploading-downloading-objects.html) no *Manual do usuário do Amazon Simple Storage Service*.

## Como funciona o registro em log para barramentos de eventos
<a name="eb-event-logs-overview"></a>

EventBridge gera registros para: 
+ Qualquer evento AWS de serviço que corresponda a uma regra no barramento de eventos
+ Qualquer evento entregue pelos seguintes métodos, independentemente do evento ter sido ingerido com êxito ou corresponder a alguma regra:
  + Eventos das [fontes de eventos de parceiro](eb-saas.md)
  + Eventos [reproduzidos de um arquivo](eb-archive.md)
  + Eventos enviados para o barramento por meio de [`PutEvents`](eb-putevents.md)

EventBridge não registra eventos que correspondam apenas às [regras gerenciadas](eb-rules.md#eb-rules-managed).

Os dados de log enviados para cada destino de log selecionado são iguais.

Você pode personalizar os registros EventBridge enviados para os destinos selecionados da seguinte forma:
+ Você pode especificar o *nível do registro*, que determina as etapas para as quais os registros são EventBridge enviados para os destinos selecionados. Para obter mais informações, consulte [Especificação do nível de log do barramento de eventos](#eb-event-bus-logs-level).
+ Você pode especificar se EventBridge inclui mais informações granulares quando relevante, incluindo:
  + Detalhes do evento
  + Informações de entrada do destino
  + Informações de solicitação do destino

  Para obter mais informações, consulte [Inclusão de dados detalhados em logs do barramento de eventos](#eb-event-logs-data).

### Considerações da entrega de log
<a name="eb-event-logs-delivery"></a>

Tenha as seguintes considerações em mente ao configurar o registro em log para barramentos de eventos:
+ Os registros de log do barramento de eventos são entregues com base no melhor esforço. A maioria das solicitações para um barramento de eventos devidamente configurada para registro em log resulta em um registro de log entregue. A integralidade e a pontualidade do registro em log do barramento de eventos não são garantidas. 
+ Em algumas circunstâncias, a entrega de registros de log do barramento de eventos por si só gera eventos que são enviados para EventBridge, o que pode causar interrupções na entrega dos registros de log. Por esse motivo, EventBridge não registra os seguintes eventos:
  + AWS KMS `[Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)`e `[GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)` eventos gerados quando registros de log criptografados usando uma chave gerenciada pelo cliente são entregues a um destino de log.
  + Os eventos `[PutRecordBatch](https://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html)` no Firehose gerados pela entrega dos logs do barramento de eventos.
+ Para destinos de log do S3, não é recomendável especificar um bucket de destino com a [notificação de eventos EventBridge](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-event-notifications-eventbridge.html) ativada, pois isso pode resultar em interrupção na entrega de seus registros.

### Registro em log da criptografia
<a name="eb-event-logs-encryption"></a>

Ao enviar registros, EventBridge criptografa as `error` seções `detail` e de cada registro de log com a chave KMS especificada para o barramento de eventos. Depois de entregue, o registro será descriptografado e, em seguida, recriptografado com a chave KMS especificada para o destino do log.

Para obter mais informações, consulte [Criptografia de logs do barramento de eventos](encryption-bus-logs.md).

### Especificação das permissões do registro em log do barramento de eventos
<a name="eb-event-logs-permission"></a>

Para habilitar o registro a partir de um barramento de eventos, você deve conceder permissões EventBridge para enviar registros desse barramento. Adicione uma política que conceda subsídios **AllowVendedLogDeliveryForResource**ao ônibus do evento.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ServiceLevelAccessForLogDelivery",
            "Effect": "Allow",
            "Action": [
                "events:AllowVendedLogDeliveryForResource"
            ],
            "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/my-event-bus*"
        }
    ]
}
```

------

Para obter mais informações, consulte [Permissões específicas do serviço no Guia](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-vended-logs-permissions) do *usuário de CloudWatch registros*.

## Especificação do nível de log do barramento de eventos
<a name="eb-event-bus-logs-level"></a>

Você pode especificar os tipos de etapas de processamento de eventos que são EventBridge registrados nos destinos de log selecionados. 

Escolha um dentre os níveis de detalhe a seguir para incluir em logs. O nível de log se aplica a todos os destinos de log especificados para o barramento de eventos. Cada nível de log inclui as etapas dos níveis de log anteriores.
+ **DESLIGADO** — EventBridge não envia nenhum registro. Esse é o padrão.
+ **ERRO** — EventBridge envia todos os registros relacionados aos erros gerados durante o processamento do evento e a entrega do alvo.
+ **INFO** — EventBridge envia todos os registros relacionados a erros, bem como as principais etapas executadas durante o processamento do evento.
+ **TRACE** — EventBridge envia todos os registros gerados durante todas as etapas do processamento do evento.

A tabela a seguir lista as etapas de processamento de eventos inclusas em cada nível do log.


| Etapa | RASTREAR | INFO | ERRO | DESL. | 
| --- | --- | --- | --- | --- | 
|  Evento ingerido  | x | x |  |  | 
|  Falha na ingestão de eventos  | x | x | x |  | 
|  Evento recebido  | x |  |  |  | 
|  Tentativa de invocação iniciada  | x |  |  |  | 
|  Falha permanente na tentativa de invocação  | x | x | x |  | 
|  Falha na nova tentativa de invocação  | x | x | x |  | 
|  Tentativa de invocação com êxito  | x |  |  |  | 
|  Tentativa de invocação com controle de utilização  | x | x | x |  | 
|  DLQ de invocação  | x | x | x |  | 
|  Falha na invocação  | x | x | x |  | 
|  Invocação iniciada  | x | x |  |  | 
|  Invocação bem-sucedida  | x | x |  |  | 
|  Invocação iniciada com controle de utilização  | x | x | x |  | 
|  Nenhuma regra correspondente  | x | x |  |  | 
|  Regra correspondente   | x | x |  |  | 
|  Combinação de regras iniciada   | x |  |  |  | 

## Inclusão de dados detalhados em logs do barramento de eventos
<a name="eb-event-logs-data"></a>

Você pode especificar EventBridge para incluir informações mais granulares nos registros que ele gera. Esses dados podem ser úteis para solução de problemas e depuração. Se você selecionar essa opção, EventBridge inclua esses dados nos registros relevantes para todos os destinos de log especificados.

As informações detalhadas incluem os seguintes campos: 
+ `event_detail`: os detalhes do próprio evento.
+ `target_input`: a solicitação é EventBridge enviada para o destino.
+ `target_properties`: 

## Truncamento de dados em logs do barramento de eventos
<a name="eb-event-logs-data-truncation"></a>

Devido às restrições de destino do log, EventBridge limita os registros de log a 1 MB. Se um registro de log exceder esse limite, EventBridge truncará o registro removendo os seguintes campos na seguinte ordem:
+ `target_input`
+ `target_properties`
+ `target_response_body`

EventBridge remove o `event_detail` campo dos seguintes tipos de registro de log, se necessário:
+ `EVENT_RECEIVED`
+ `EVENT_INGESTED`
+ `EVENT_INGESTED_FAILED`
+ `RULE_MATCH_STARTED`

Se o truncamento for necessário, EventBridge remove o campo inteiro.

Se EventBridge truncar campos no evento, o `dropped_fields` campo incluirá uma lista dos campos de dados excisados.

## Relatório de erros em logs do barramento de eventos
<a name="eb-event-logs-errors"></a>

EventBridge também inclui dados de erro, quando disponíveis, em etapas que representam estados de falha. Essas etapas incluem:
+ `EVENT_INGEST_FAILURE`
+ `INVOCATION_THROTTLE_START`
+ `INVOCATION_ATTEMPT_THROTTLE`
+ `INVOCATION_ATTEMPT_RETRYABLE_FAILURE`
+ `INVOCATION_ATTEMPT_PERMANENT_FAILURE`
+ `INVOCATION_FAILURE`
+ `INVOCATION_DLQ`

# O que a Amazon EventBridge registra para ônibus de eventos
<a name="eb-event-logs-execution-steps"></a>

Entender como EventBridge os eventos de processos podem ajudar você a usar registros para solucionar ou depurar problemas de barramento de eventos.

Se o registro estiver ativado, EventBridge gerará vários registros de registro à medida que um evento for processado. 

Aqui estão as principais etapas EventBridge executadas ao processar um evento:
+ Um evento é enviado para um barramento de eventos

  EventBridge gera registros de eventos enviados de fontes parceiras, reproduzidos de arquivos ou enviados usando`PutEvents`, independentemente de corresponderem ou não a alguma regra.
+ EventBridge determina se o evento corresponde a alguma regra no ônibus.

  Se o evento corresponder a uma ou mais regras, EventBridge prossiga para a próxima etapa.

  Se um AWS evento não corresponder a nenhuma regra, EventBridge descarta-o e não gera nenhum registro.
+ EventBridge invoca o alvo.

  EventBridge tenta invocar o alvo novamente conforme necessário até:
  + O evento ter sido entregue com êxito.
  + Falha na entrega do evento, como se a política de nova tentativa expira ou ocorre uma falha permanente.

    Se a entrega falhar, EventBridge envia o evento para uma fila de cartas mortas (DLQ), se uma for especificada, ou descarta o evento se nenhuma DLQ for especificada.

O diagrama abaixo apresenta uma exibição detalhada do fluxo de processamento de eventos, com todas as etapas possíveis representadas, com o nível de log de cada etapa.

Para obter uma lista completa de etapas, consulte [Como especificar o nível do log](eb-event-bus-logs.md#eb-event-bus-logs-level).

![\[EventBridge prossegue com as etapas para processar cada evento enviado ao ônibus.\]](http://docs.aws.amazon.com/pt_br/eventbridge/latest/userguide/images/bus_logging_eventbridge_conceptual.svg)


# Esquema de registro de ônibus de EventBridge eventos da Amazon
<a name="eb-event-logs-schema"></a>

A referência a seguir detalha o esquema dos registros de log EventBridge do barramento de eventos. Cada registro representa uma etapa que EventBridge executa o processamento de um evento específico.

Para obter mais informações, consulte [Registro em log dos barramentos de eventos ](eb-event-bus-logs.md).

```
{    
    "resource\$1arn": "arn:aws:events:region:account:event-bus/bus-name",
    "request\$1id": "guid", 
    "event\$1id": "guid", 
    "invocation\$1id": "guid",
    "message\$1timestamp\$1ms": "date_time",    
    "message\$1type": "step",  
    "log\$1level": "TRACE | INFO | ERROR",
    "details": {
      },
    "error": {  
        "http\$1status\$1code": code,  
        "error\$1message": "error_message",  
        "aws\$1service": "service_name",  
        "request\$1id": "service_request_id"  
    }  
}
```

**resource\$1arn**  <a name="event-log-schema-resource-arn"></a>
O nome do recurso da Amazon (ARN) do barramento de eventos.

**request\$1id**  <a name="event-log-schema-request-id"></a>
O ID da solicitação.

**event\$1id**  <a name="event-log-schema-event-id"></a>
O ID do evento que está sendo processado.

**invocation\$1id**  <a name="event-log-schema-invocation-id"></a>
O ID da invocação do evento.

**message\$1timestamp\$1ms**  <a name="event-log-schema-timestamp"></a>
A data e a hora em que o evento de log foi emitido.  
Unidade: milissegundo

**message\$1type**  <a name="event-log-schema-message-type"></a>
A etapa de processamento do evento para a qual o registro de log foi gerado.  
Para obter mais informações sobre as etapas EventBridge executadas ao processar um evento, consulte[O que a Amazon EventBridge registra para ônibus de eventos](eb-event-logs-execution-steps.md).  
*Valores válidos:*  
+ `EVENT_INGEST_FAILURE`
+ `EVENT_INGEST_SUCCESS`
+ `EVENT_RECEIPT`
+ `INVOCATION_ATTEMPT_PERMANENT_FAILURE`
+ `INVOCATION_ATTEMPT_RETRYABLE_FAILURE`
+ `INVOCATION_ATTEMPT_START`
+ `INVOCATION_ATTEMPT_SUCCESS`
+ `INVOCATION_ATTEMPT_THROTTLE`
+ `INVOCATION_DLQ`
+ `INVOCATION_FAILURE`
+ `INVOCATION_START`
+ `INVOCATION_SUCCESS`
+ `INVOCATION_THROTTLE_START`
+ `NO_STANDARD_RULES_MATCHED`
+ `RULE_MATCH`
+ `RULE_MATCH_START`

**log\$1level**  <a name="event-log-schema-loglevel"></a>
O nível de detalhe especificado para o log do barramento de eventos.  
*Valores válidos*: `ERROR` \$1 `INFO` \$1 `TRACE`  
Para obter mais informações, consulte [Especificação do nível de log do barramento de eventos](eb-event-bus-logs.md#eb-event-bus-logs-level).

**detalhes**  <a name="event-log-schema-details"></a>
Contém detalhes da etapa, com base no tipo de detalhe da etapa.  
Os campos listados abaixo são retornados para os seguintes tipos de mensagem:  
+ `EVENT_INGEST_SUCCESS`
+ `EVENT_INGEST_FAILURE`
+ `EVENT_RECEIPT`
+ `RULE_MATCH_START`

```
{
  "caller_account_id": "account_id",
  "source_time_ms": date_time,
  "source": "source",
  "detail_type": " type",
  "resources": [],
  "event_detail": "{}"
}
```
Os campos listados abaixo são retornados para o seguinte tipo de mensagem:  
+ `RULE_MATCH`

```
{
  "rule_arn": "ARN",
  "target_arns": [
    "ARN"
  ],
  "invocation_ids": [
    "guid"
  ]
}
```
Os campos listados abaixo são retornados para os seguintes tipos de mensagem:  
+ `INVOCATION_ATTEMPT_START`
+ `INVOCATION_START`
+ `INVOCATION_THROTTLE_START`

```
{
  "rule_arn": "ARN",
  "role_arn": "ARN",
  "target_arn": "ARN",
  "attempt_count": Integer,
  "target_input": "string",
  "target_properties": "string"
}
```
Os campos listados abaixo são retornados para os seguintes tipos de mensagem:  
+ `INVOCATION_DLQ`
+ `INVOCATION_FAILURE`
+ `INVOCATION_SUCCESS`

```
{
  "rule_arn": "ARN",
  "role_arn": "ARN",
  "target_arn": "ARN",
  "target_input": "string",
  "target_properties": "string",
  "total_attempts": Integer,
  "final_invocation_status": "status",
  "ingestion_to_start_latency_ms": Integer,
  "ingestion_to_complete_latency_ms": Integer,
  "ingestion_to_success_latency_ms": Integer,
  "target_duration_ms": Integer,
  "target_response_body": "string"
}
```
Os `ingestion_to_start_latency_ms` e `ingestion_to_complete_latency_ms` só são incluídos na primeira tentativa de invocação. O campo `ingestion_to_success_latency_ms` só é incluído para invocações bem-sucedidas.  
Os campos listados abaixo são retornados para os seguintes tipos de mensagem:  
+ `INVOCATION_ATTEMPT_PERMANENT_FAILURE`
+ `INVOCATION_ATTEMPT_RETRYABLE_FAILURE`
+ `INVOCATION_ATTEMPT_SUCCESS`
+ `INVOCATION_ATTEMPT_THROTTLE`

```
{
  "rule_arn": "ARN",
  "role_arn": "ARN",
  "target_arn": "ARN",
  "attempt_type": "FIRST | THROTTLE | RETRY",
  "attempt_count": Integer,
  "invocation_status": "status",
  "target_duration_ms": Integer,
  "target_response_body": "string"
}
```

**dropped\$1fields**  <a name="event-log-schema-dropped_fields"></a>
Uma lista de todos os campos de dados EventBridge foi truncada para manter o registro abaixo do limite de tamanho de 1 MB.  
EventBridge não inclui esse campo se tiver truncado quaisquer campos de detalhes.  
Para obter mais informações, consulte [Truncamento de dados em logs do barramento de eventos](eb-event-bus-logs.md#eb-event-logs-data-truncation).

**erro**  <a name="event-log-schema-error"></a>
Contém informações de qualquer erro gerado durante esta etapa. Para erros, o EV sempre inclui os seguintes campos:  
+ `error_message`
+ `aws_service`
E os seguintes campos, se disponíveis:  
+ `request_id`
+ `http_status_code`
Se nenhum erro foi gerado durante essa etapa, EventBridge não inclui esse campo no registro de log.    
**http\$1status\$1code**  <a name="event-log-schema-http-status-code"></a>
O código de status HTTP retornado pelo serviço chamado.  
**mensagem\$1de\$1erro**  <a name="event-log-schema-message"></a>
A mensagem de erro retornada pelo serviço chamado.  
**aws\$1service**  <a name="event-log-schema-aws-service"></a>
O nome do serviço chamado.  
**identificação\$1solicitação**  <a name="event-log-schema-error-request-id"></a>
O ID de solicitação para essa solicitação do serviço chamado.