Criação de uma EventBridge regra para capturar eventos do ciclo de vida do grupo e publicar notificações - AWS Resource Groups

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

Criação de uma EventBridge regra para capturar eventos do ciclo de vida do grupo e publicar notificações

Você pode ativar eventos de ciclo de vida de grupos para seus grupos de recursos AWS Resource Groups para publicar eventos na Amazon. EventBridge Em seguida, você pode criar EventBridge regras que respondam a esses eventos enviando-os para outros Serviços da AWS para processamento posterior.

AWS CLI

O processo para criar uma regra EventBridge que capture eventos e os envie para o serviço de destino desejado usa dois comandos CLI separados:

Etapa 1: criar a EventBridge regra para capturar os eventos

O comando de AWS CLI put-rule exemplo a seguir cria uma EventBridge regra que captura todas as alterações de eventos do ciclo de vida do Resource Groups.

$ aws events put-rule \ --name "CatchAllResourceGroupEvents" \ --event-pattern '{"source":["aws.resource-groups"]}' { "RuleArn": "arn:aws:events:us-east-1:123456789012:rule/CatchAllResourceGroupEvents" }

O resultado inclui o nome do recurso da Amazon (ARN) para a nova política.

nota

Valores de parâmetros que incluem cadeias de caracteres entre aspas têm regras de formatação diferentes com base no sistema operacional e no shell em uso. Para os exemplos deste guia, mostramos comandos que funcionam em um shell Linux BASH. Para obter instruções sobre a formatação de cadeias de caracteres com aspas incorporadas para outros sistemas operacionais, como o prompt de comando do Windows, consulte Usando aspas dentro de cadeias de caracteres no Guia do usuário do AWS Command Line Interface.

À medida que as cadeias de caracteres de parâmetros se tornam mais complexas, pode ser mais fácil e menos propenso a erros aceitar um valor de parâmetro de um arquivo de texto em vez de digitá-lo diretamente na linha de comando.

O padrão de eventos a seguir restringe os eventos somente àqueles relacionados ao grupo especificado, identificados por seu ARN. Esse padrão de evento é uma cadeia de caracteres JSON complexa que é muito menos legível quando compactada em uma cadeia de caracteres JSON de linha única com escape adequado. Em vez disso, você pode armazená-la em um arquivo.

Armazene a cadeia de caracteres JSON do padrão de evento em um arquivo. No exemplo de código a seguir, o arquivo éeventpattern.txt.

{ "source": [ "aws.resource-groups" ], "detail": { "group": { "arn": [ "my-resource-group-arn" ] } } }

Em seguida, execute o seguinte comando para criar a regra, recuperando o padrão de evento personalizado do arquivo.

$ aws events put-rule \ --name "CatchResourceGroupEventsForMyGroup" \ --event-pattern file://eventpattern.txt { "RuleArn": "arn:aws:events:us-east-1:123456789012:rule/CatchResourceGroupEventsForMyGroup" }

Para capturar outros tipos de eventos dos Grupos de recursos, substitua a cadeia de caracteres --event-pattern por filtros como os apresentados na seção Exemplo de padrões de eventos EventBridge personalizados para diferentes casos de uso.

Etapa 2: anexar um alvo que possa processar os eventos à EventBridge regra

Agora que você tem uma regra que captura os eventos de seu interesse, é possível anexar um ou mais destinos para fazer algum tipo de processamento nos eventos.

O seguinte comando da AWS CLI, put-targets, anexa um tópico do Amazon Simple Notification Service (Amazon SNS) nomeado my-sns-topic à regra criada no exemplo anterior. Todos os assinantes do tópico recebem uma notificação quando ocorre uma alteração no grupo especificado na regra.

$ aws events put-targets \ --rule CatchResourceGroupEventsForMyGroup \ --targets Id=1,Arn=arn:aws:sns:us-east-1:123456789012:my-sns-topic { "FailedEntryCount": 0, "FailedEntries": [] }

Nesse ponto, todas as alterações de grupo que correspondam ao padrão de evento em sua regra são enviadas automaticamente para o destino ou destinos configurados. Se, como no exemplo anterior, o destino for um tópico do Amazon SNS, todos os assinantes do tópico receberão uma mensagem contendo o evento conforme descrito em Estrutura e sintaxe dos eventos do ciclo de vida dos Grupos de recursos.

Para mais informações, consulte os seguintes recursos:

Criação de uma regra para capturar somente tipos específicos de eventos do ciclo de vida do grupo

É possível criar uma regra com um padrão de evento personalizado que capture somente os eventos pelos quais você se interessa. Para obter detalhes completos sobre como filtrar eventos recebidos usando um padrão de evento personalizado, consulte EventBridge Eventos da Amazon no Guia do EventBridge usuário da Amazon.

Por exemplo, suponha que você queira que uma regra processe somente as notificações de Grupos de recursos que indicam a criação de um novo grupo de recursos. Você pode usar um padrão de evento personalizado semelhante ao exemplo a seguir.

{ "source": [ "aws.resource-groups" ], "detail-type": [ "ResourceGroups Group State Change" ], "detail": { "state-change": "create" } }

Esse filtro captura somente os eventos que têm esses valores exatos nos campos especificados. Para obter uma lista completa dos campos do disponíveis para você corresponder, consulte Estrutura e sintaxe dos eventos do ciclo de vida dos Grupos de recursos.