amazon-web-services - 使用 AWS 事件模式进行内容过滤 | 如何结合 'anything-but' & 'prefix' 事件
问题描述
问题参考:https ://docs.aws.amazon.com/eventbridge/latest/userguide/content-filtering-with-event-patterns.html
我正在尝试使用 CloudWatch 事件在文件被放入 S3 存储桶时触发事件。如果任何文件被放入文件名不是以 BP 开头的 test-buckt1/in 中,我将使用以下内容触发。
{
"detail": {
"eventName": ["PutObject"],
"eventSource": ["s3.amazonaws.com"],
"requestParameters": {
"bucketName": ["test-buckt1"],
"key": [
{
"anything-but": {
"prefix": "in/BP"
}
}
]
}
},
"detail-type": ["AWS API Call via CloudTrail"],
"source": ["aws.s3"]
}
问题:即使将文件拖放到其他对象(例如 test-buckt1/out 文件夹)也会触发此问题。我可以在下面使用它,但我必须在我的 lamdba 代码中添加逻辑来过滤以 BP 开头的文件名 -
{
"detail": {
"eventName": ["PutObject"],
"eventSource": ["s3.amazonaws.com"],
"requestParameters": {
"bucketName": ["test-buckt1"],
"key": [
{ "prefix": "in/"
}]
}
},
"detail-type": ["AWS API Call via CloudTrail"],
"source": ["aws.s3"]
}
我们可以结合上述任何方式。所以一条规则应该只在文件被拖放到 test-buckt1/in 文件夹时触发,并且当文件名放在 test/buckt1/in 以 BP 开头时它不应该触发
解决方案
推荐阅读
- javascript - 我想升级此代码以兼容 Android 10
- google-people-api - 用于多个网页的 Google 项目
- python-3.x - 使用 seaborn 绘制多个计数图
- mysql-workbench - MySQL Workbench 深色主题的问题(带文本的白色背景)
- python - Pandas/Python:如何使用函数过滤数据框或系列?
- c# - c# 无法将父控件的可见性设置为“可见”,将子控件的可见性设置为“已折叠”
- matlab - 在 MATLAB 中编写矩阵模型
- game-engine - 游戏引擎在幕后使用哪些库?
- arrays - 如何按顺序从数组中填充组合框列表
- asp.net-mvc - 如何获取文件系统路径以在 ASPNET MVC 中保存文件