S3事件通知能否排除/exports/文件夹的对象创建事件触发?
结论
S3完全支持该配置需求,以下是两种可落地的实现方案,优先推荐第一种,可在S3端直接过滤无效事件,降低不必要的Lambda调用成本:
方案1:修改S3事件通知过滤规则(推荐)
当前S3事件通知已原生支持通配符模式的前缀过滤能力,你可以直接调整现有的All object create events触发规则:
- 在规则的过滤配置中添加「排除前缀」规则,规则值填写
*/exports/* - 配置完成后,所有路径中包含运营人员目录下
/exports/的对象创建事件,都会被S3直接过滤,不会推送到Lambda函数 - 如果你通过CLI/SDK配置,直接在事件通知的
Filter参数中新增ExcludePrefix字段,赋值为*/exports/*即可
方案2:Lambda入口增加过滤逻辑
如果你的使用场景暂不支持通配符排除规则,可以直接在Lambda函数入口加一层轻量判断:
- 解析S3触发事件的
Records字段,提取对应创建对象的键值key - 判断
key字符串是否包含子串/exports/,如果匹配则直接终止函数执行,不运行后续业务逻辑即可
配置提醒:S3的对象键不存在前导斜杠,配置过滤规则时不需要额外在
exports/前添加前导斜杠,避免匹配失效。
内容的提问来源于stack exchange,提问作者J86
相关产品推荐
相关产品推荐

