Metas de ônibus para eventos na Amazon EventBridge - 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á.

Metas de ônibus para eventos na Amazon EventBridge

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 de barramento de eventos disponíveis no EventBridge console

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

Parâmetros de destino

Alguns alvos 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 um evento específico. API EventBridge usa os parâmetros do Target para determinar o que acontece com esse alvo. Incluindo o seguinte:

  • APIdestinos (Os dados enviados para um API destino devem corresponder à estrutura doAPI. Você deve usar o InputTransformerobjeto para garantir que os dados sejam estruturados corretamente. Se você quiser incluir a carga original do evento, faça referência a ela no InputTransformer.)

  • APIGateway (Os dados enviados ao API Gateway devem corresponder à estrutura doAPI. Você deve usar o InputTransformerobjeto para garantir que os dados sejam estruturados corretamente. Se você quiser incluir a carga original do evento, faça referência a ela no InputTransformer.)

  • Amazon EC2 Image Builder

  • RedshiftDataParameters(Clusters de dados API do Amazon Redshift)

  • SageMakerPipelineParameters(Amazon SageMaker Runtime Model Building Pipelines)

nota

EventBridge não suporta toda a sintaxe JSON do 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 oferecem suporte à sintaxe opcional de JSON caminho dinâmico. Essa sintaxe permite especificar JSON caminhos em vez de valores estáticos (por exemplo$.detail.state). Todo o valor precisa ser um JSON caminho, 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 suportada para JSON caminhos de parâmetros dinâmicos é a mesma da transformação da entrada. Para ter 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 API chamadas sobre os recursos que você possui, EventBridge precisa da permissão apropriada. Para SNS recursos da Amazon AWS Lambda e da Amazon, EventBridge usa políticas baseadas em recursos. Por EC2 exemplo, os fluxos de dados do Kinesis e as máquinas de estado do Step Functions EventBridge usam IAM funções que você especifica no RoleARN parâmetro em. PutTargets Você pode invocar um endpoint do API Gateway com IAM autorização configurada, mas a função é opcional se você não tiver configurado a autorização. Para obter 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 obter mais informações, consulte Enviar e receber eventos entre AWS contas na Amazon EventBridge.

Se seu alvo for criptografado, você deverá incluir a seção a seguir em sua política de KMS chaves.

{ "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

Certos 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

    Isso inclui apenas jobId

  • Parameters: parameters

CloudWatch Registra grupos como alvos

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 projetos como alvos

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

ECSTarefas da Amazon como alvos

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

Planos de resposta do Incident Manager como metas

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.