You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS EventBridge规则忽略前缀与后缀匹配问题排查

解决AWS EventBridge规则触发条件不符合预期的问题

我来帮你搞定这个问题!你现在的EventBridge规则之所以会触发所有文件,核心原因是事件模式里的数组结构代表逻辑或(OR)——你把prefix和suffix放在了object.key的数组里,这意味着只要文件路径满足prefix: "files/" 或者 suffix: ".csv"其中一个条件,规则就会触发,这就导致了非CSV的文件(比如.pdf)只要在files/目录下也会触发,甚至不在files/目录下的CSV文件也会触发。

要实现同时满足两个条件(逻辑与AND),你需要把prefix和suffix放在同一个object.key的对象里,而不是数组中。EventBridge的事件模式规则里,同一个字段下的多个条件默认是逻辑与的关系。

下面是修正后的规则配置JSON:

{
  "detail-type": ["Object Created"],
  "source": ["aws.s3"],
  "detail": {
    "bucket": {
      "name": ["my-files-bucket"]
    },
    "object": {
      "key": {
        "prefix": "files/",
        "suffix": ".csv"
      }
    }
  }
}

简单解释下这个配置的逻辑:

  • 仅监听S3的Object Created事件
  • 仅针对my-files-bucket存储桶
  • 仅当被创建的对象同时满足:路径以files/开头,且以.csv结尾时,才触发规则

这样配置后,只有上传到files/目录下的CSV文件才会触发你的Step Function,其他类型的文件或者不在指定目录的文件都不会触发啦。

内容的提问来源于stack exchange,提问作者bananabreadbob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 17:06:50