EventBridge Metas da Amazon - Amazon EventBridge

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

EventBridge Metas da Amazon

Um destino é um recurso ou endpoint que EventBridge envia um evento para quando o evento corresponde ao padrão de evento definido para uma regra. A regra processa os dados do evento 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.

O vídeo a seguir aborda os conceitos básicos dos destinos:

Alvos disponíveis no EventBridge console

Você pode configurar os seguintes alvos para eventos no EventBridge console:

Parâmetros de destino

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 para determinar o que acontece com esse alvo. Incluindo o seguinte:

  • Destinos da API (os dados enviados para o destino da API devem corresponder à estrutura da API. É preciso usar o objeto InputTransformer para garantir que os dados sejam estruturados corretamente. Se quiser incluir a carga original do evento, faça referência a ela no InputTransformer.)

  • API Gateway (os dados enviados para o API Gateway devem corresponder à estrutura da API. É preciso usar o objeto InputTransformer para garantir que os dados sejam estruturados corretamente. Se quiser incluir a carga original do evento, faça referência a ela no InputTransformer.)

  • Amazon EC2 Image Builder

  • RedshiftDataParameters (Clusters da API de dados do Amazon Redshift)

  • SageMakerPipelineParameters(Amazon SageMaker Runtime Model Building Pipelines)

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 (*)

Parâmetros dinâmicos do caminho

Alguns parâmetros de destino são compatíveis com a sintaxe de caminho JSON dinâmico opcional. Esta sintaxe permite especificar caminhos JSON em vez de valores estáticos (por exemplo$.detail.state). O valor inteiro precisa ser um caminho JSON, não apenas parte dele. Por exemplo, RedshiftParameters.Sql pode ser $.detail.state, mas não pode ser "SELECT * FROM $.detail.state". Estes caminhos são substituídos dinamicamente em runtime por dados da própria carga do evento no caminho especificado. Os parâmetros do caminho dinâmico não podem referenciar valores novos ou transformados resultantes da transformação de entrada. A sintaxe compatível com caminhos JSON de parâmetros dinâmicos é a mesma da transformação da entrada. Para mais informações, consulte Transformação EventBridge de insumos da Amazon.

A sintaxe dinâmica pode ser usada em todos os campos de string, não enumerados, desses parâmetros:

Permissões

Para fazer chamadas de API nos recursos que você possui, é EventBridge necessária a permissão apropriada. Para recursos do Amazon SNS AWS Lambda e do Amazon, EventBridge usa políticas baseadas em recursos. Para instâncias do EC2, fluxos de dados do Kinesis e máquinas de estado Step Functions EventBridge , usa funções do IAM que você especifica no parâmetro emRoleARN. PutTargets É 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 ter mais informações, consulte Amazon EventBridge e AWS Identity and Access Management.

Se outra conta estiver na mesma região e tiver concedido permissão para você, será possível enviar eventos para essa conta. Para ter mais informações, consulte Enviar e receber EventBridge eventos da Amazon entre AWS contas.

Se seu destino estiver criptografado, deverá incluir a seção a seguir em sua política de chave do KMS.

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

EventBridge especificidades do alvo

AWS Batch filas de trabalho

Alguns parâmetros AWS Batch submitJob podem ser configurados via BatchParameters.

Outros podem ser especificados na carga útil do evento. Se a carga útil do evento (transmitida ou via InputTransformers) contiver as seguintes chaves, elas serão mapeadas para os parâmetros de submitJob solicitação:

  • ContainerOverrides: containerOverrides

    nota

    Isto inclui somente comando, ambiente, memória e vcpus

  • DependsOn: dependsOn

    nota

    Isto inclui apenas jobId

  • Parameters: parameters

CloudWatch Grupo de registros

Se você não usar um InputTransformercom 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 projeto

Se você usar InputTransformerspara moldar o evento de entrada em um Target para corresponder à CodeBuild StartBuildRequestestrutura, os parâmetros serão mapeados de 1 para 1 e transmitidos para. codeBuild.StartBuild

Tarefa do Amazon ECS

Se você usar InputTransformerspara moldar o evento de entrada para um Target de acordo com a RunTask TaskOverrideestrutura do Amazon ECS, os parâmetros serão mapeados de 1 para 1 e transmitidos para. ecs.RunTask

Plano de resposta do Incident Manager

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.