繁体   English   中英

为 S3 前缀创建 AWS CloudWatch 事件规则

[英]Create AWS CloudWatch Event rule for S3 prefix

我希望在特定的存储桶和前缀中为 S3 创建事件创建 AWS CloudWatch 事件规则。 由于 CloudWatch 不支持通配符,因此我尝试明确给出前缀,如下例所示: AWS CloudWatch 事件规则是否支持 S3 存储桶/密钥名称中的任何通配符

(为了混淆,我在这里提供存储桶和前缀名称为my-data-bucketmy-data-prefix/

我的 JSON 规则:

{
  "source": [
    "aws.s3"
  ],
  "detail-type": [
    "AWS API Call via CloudTrail"
  ],
  "detail": {
    "eventSource": [
      "s3.amazonaws.com"
    ],
    "eventName": [
      "PutObject",
      "CompleteMultipartUpload"
    ],
    "requestParameters": {
      "bucketName": [
        "my-data-bucket"
      ],
      "key": [{ "prefix": "my-data-prefix/" }]
    }
  }
}

产生错误:

Event pattern contains invalid element (can only be Strings enclosed in quotes, numbers, and the unquoted keywords true, false, and null)

这可能是key请求参数不允许使用花括号,但是如何创建一个规则来仅侦听特定前缀,而不允许使用通配符? (最好不必像Cloudwatch 事件规则中那样自定义 CloudTrail 跟踪,用特定的 keypath 监听 s3 存储桶

您的事件在 CloudWatch Events (CWE) 规则中无效,但对于 CWE 替换应该没问题,即AWS EventBridge (EB)。 因此,我建议在该事件中使用 EB。

EB 基本上是 CWE 的新版本,所以你可以做同样的事情。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM