【问题标题】:AWS put-bucket-notification-configuration won't let me use "Filter"AWS put-bucket-notification-configuration 不允许我使用“过滤器”
【发布时间】:2016-01-16 00:05:57
【问题描述】:

我使用的命令:

aws s3api put-bucket-notification-configuration --bucket bucket-name --notification-configuration file:///Users/chris/event_config.json

如果我取出“过滤器”键,效果很好。只要我添加它,我就会得到:

Parameter validation failed:
Unknown parameter in NotificationConfiguration.LambdaFunctionConfigurations[0]: "Filter", must be one of: Id, LambdaFunctionArn, Events

这是我的 JSON 文件:

{  
  "LambdaFunctionConfigurations": [
   {
     "LambdaFunctionArn": "arn:aws:lambda:us-east-1:000000000:function:name",
     "Events": [
        "s3:ObjectCreated:*"
     ],
     "Filter": {
       "Key": {
         "FilterRules": [
           {
             "Name": "prefix",
             "Value": "images/"
           }
         ]
       }
     }
   }
  ]
}

当我查看命令的文档 (http://docs.aws.amazon.com/cli/latest/reference/s3api/put-bucket-notification-configuration.html) 时,我没有发现任何错误。我尝试过复制/粘贴、仔细查看等...任何帮助将不胜感激!

【问题讨论】:

  • 只是一个猜测,但查看文档和错误消息,我认为它抱怨没有“Id”字段存在。
  • 感谢您的评论。不幸的是它没有工作
  • 错误似乎来自aws cli而不是API,这表明您安装的aws cli版本可能不够新,无法理解Filter,这是一个较新的配置选项已添加到 S3 通知中。检查那个?你至少需要 1.7.46。
  • 我不敢相信我没有想到这一点!谢谢@Michael-sqlbot,请将此作为答案,以便我接受

标签: amazon-web-services amazon-s3 aws-lambda


【解决方案1】:

您需要至少运行 2015 年 8 月 20 日发布的 1.7.46 版 aws-cli。

此版本增加了对事件通知过滤器的 Amazon S3 支持并修复了一些问题。

https://aws.amazon.com/releasenotes/CLI/3585202016507998

aws-cli 实用程序包含大量内置智能和验证逻辑。新功能通常需要更新 aws-cli 中的代码,而 S3 事件通知上的 Filter 是一个相对较新的功能。

另请参阅: https://aws.amazon.com/blogs/aws/amazon-s3-update-delete-notifications-better-filters-bucket-metrics/

【讨论】:

    猜你喜欢
    • 2016-09-05
    • 1970-01-01
    • 1970-01-01
    • 2014-07-05
    • 1970-01-01
    • 2020-08-05
    • 2017-01-17
    • 2019-06-17
    • 1970-01-01
    相关资源
    最近更新 更多