Fazer a correspondência de eventos com valores nulos e strings vazias no Amazon EventBridge
Importante
No EventBridge, é possível criar regras que possam resultar em cobranças e controle de utilização mais altos do que o esperado. Por exemplo, é possível criar, por engano, uma regra que leva a um loop infinito, em que uma regra é acionada recursivamente sem fim. Supõe-se que uma regra possa detectar que as ACLs foram alteradas em um bucket do Amazon S3 e acionar o software para alterá-las para o estado desejado. Se a regra não for gravada cuidadosamente, a alteração subsequente às ACLs disparará a regra novamente, criando um loop infinito.
Para obter orientação sobre como escrever regras precisas e padrões de eventos para minimizar esses resultados inesperados, consulte Práticas recomendadas para regras e Práticas recomendadas.
Também é possível criar um padrão de evento que corresponde a um evento de campo que tem um valor nulo ou uma string vazia. Considere o exemplo de evento a seguir:
Veja as práticas recomendadas para evitar cobranças e controle de utilização acima do esperado
{
"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": [
],
"detail": {
"eventVersion": "",
"responseElements": null
}
}
Para corresponder eventos onde o valor de eventVersion
é uma string vazia, use o padrão a seguir, que corresponderia com o exemplo de evento.
{
"detail": {
"eventVersion": [""]
}
}
Para corresponder eventos onde o valor de responseElements
é nulo, use o padrão a seguir, que corresponderia com o exemplo de evento.
{
"detail": {
"responseElements": [null]
}
}
nota
Valores Null e Strings vazias não são permutáveis em correspondência padrão. Um padrão de evento que corresponde a strings vazias não corresponde aos valores de null
.