【问题标题】:Creating Multiple QueueConfigurations in CloudFormation在 CloudFormation 中创建多个 QueueConfiguration
【发布时间】:2020-11-05 00:37:15
【问题描述】:

我目前正在尝试将多个 QueueConfigurations 写入我的 CloudFormation 模板。每个都是一个 SQS 队列,当对象被创建到指定的前缀时触发。这是我目前所拥有的:

{
    "Resources": {
      "S3Bucket": {
        "Type" : "AWS::S3::Bucket",
        "Properties" : 
          "BucketName" : { "Ref" : "paramBucketName" },
          "LoggingConfiguration" : {
            "DestinationBucketName" : "test-bucket",
            "LogFilePrefix" : { "Fn::Join": [ "", [ { "Ref": "paramBucketName" }, "/" ] ] }
          },
          "NotificationConfiguration" : {
              "QueueConfigurations" : [{
                "Id" : "1",
                "Event" : "s3:ObjectCreated:*",
                "Filter" : { 
                  "S3Key" : {
                    "Rules" : {
                      "Name" : "prefix",
                      "Value" : "folder1/"
                    }
                  }
                },
                "Queue" : "arn:aws:sqs:us-east-1:958262988361:interstate-cdc_feeder_prod_hvr_dev"
              }],   
              "QueueConfigurations" : [{
                "Id" : "2",
                "Event" : "s3:ObjectCreated:*",
                "Filter" : { 
                  "S3Key" : {
                    "Rules" : {
                      "Name" : "prefix",
                      "Value" : "folder2/"
                    }
                  }
                },
                "Queue" : "arn:aws:sqs:us-east-1:958262988361:interstate-latency_hvr_dev"
              }]
            }                               
          }          
        }
      }
    }
  }

我遇到了Encountered unsupported property Id 的错误。我认为通过定义ID,我将能够避免Duplicate object key错误。

有谁知道如何在单个 CloudFormation 模板中创建多个触发器?提前感谢您的帮助。

【问题讨论】:

    标签: json amazon-web-services amazon-s3 amazon-cloudformation amazon-sqs


    【解决方案1】:

    应该像下面这样的结构,应该只有一个QueueConfigurations属性 包含其中的所有队列配置。此外,Id 参数不是有效属性。

    {
        "Resources": {
          "S3Bucket": {
            "Type" : "AWS::S3::Bucket",
            "Properties" : 
              "BucketName" : { "Ref" : "paramBucketName" },
              "LoggingConfiguration" : {
                "DestinationBucketName" : "test-bucket",
                "LogFilePrefix" : { "Fn::Join": [ "", [ { "Ref": "paramBucketName" }, "/" ] ] }
              },
              "NotificationConfiguration" : {
                  "QueueConfigurations" : [{
                    "Event" : "s3:ObjectCreated:*",
                    "Filter" : { 
                      "S3Key" : {
                        "Rules" : {
                          "Name" : "prefix",
                          "Value" : "folder1/"
                        }
                      }
                    },
                    "Queue" : "arn:aws:sqs:us-east-1:958262988361:interstate-cdc_feeder_prod_hvr_dev"
                  },
                  {
                    "Event" : "s3:ObjectCreated:*",
                    "Filter" : { 
                      "S3Key" : {
                        "Rules" : {
                          "Name" : "prefix",
                          "Value" : "folder2/"
                        }
                      }
                    },
                    "Queue" : "arn:aws:sqs:us-east-1:958262988361:interstate-latency_hvr_dev"
                  }]
                }                               
              }          
            }
          }
        }
      }
    

    文档中有更多关于QueueConfiguration的信息。

    【讨论】:

    • 没问题@ClaireLe 很高兴我能帮上忙
    猜你喜欢
    • 2021-04-19
    • 2023-01-12
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-08
    • 1970-01-01
    • 2017-08-16
    相关资源
    最近更新 更多