如何在AWS EventBridge事件模式中对同一字段设置多条件过滤?
AWS EventBridge 事件模式配置解决方案
你当前的写法会被EventBridge解析为逻辑或,无法实现同时排除两类表的需求。正确的做法是把需要排除的两类规则用or包裹,放在anything-but内部,这样就能过滤掉所有以database_1/database_2开头,或者以_test结尾的表事件。
正确的事件模式代码如下:
{ "detail": { "typeOfChange": ["CreateTable", "UpdateTable"], "tableName": { "anything-but": { "or": [ { "prefix": ["database_1", "database_2"] }, { "suffix": "_test" } ] } } }, "source": ["aws.glue"] }
逻辑说明:
anything-but:匹配所有不符合内部规则的事件or:内部的两个条件是需要排除的情况,只要满足其中一个(前缀匹配或后缀匹配),该事件就会被排除- 最终匹配的事件:
typeOfChange为CreateTable或UpdateTable,且tableName既不以database_1/database_2开头,也不以_test结尾的Glue事件
内容的提问来源于stack exchange,提问作者Nakano
相关产品推荐
相关产品推荐

