首页 文章

将Kinesis Firehose设置为CloudFormation中CloudWatch Events规则的目标

提问于
浏览
0

我正在制作CloudFormation模板,以捕获将CloudWatch Events发送到Kinesis Firehose Delivery Stream的流程组件 . (它通过控制台手动配置在AWS中工作 . )

当我定义AWS::Events::Rule时,有一个Targets属性需要ARN的有效目标 . 问题是 AWS::KinesisFirehose::DeliveryStream 资源不支持检索其ARN, Fn::Ref 只返回其逻辑ID . (Fn::GetAtt可用于获取 AWS::Kinesis::Stream 的ARN,但 AWS::KinesisFirehose::DeliveryStream 没有任何内容 . )

我是否采取了错误的方式,或者这只是CloudFormation尚未支持的事情之一?

1 回答

  • 1

    您应该能够基于Kinesis Firehose的ARN namespace构建DeliveryStream ARN

    假设 AWS::KinesisFirehose::DeliveryStream 资源被称为 DeliveryStream (未经测试),以下内容如下

    {"Fn::Sub": [
        "arn:aws:firehose:${AWS::Region}:${AWS::AccountId}:deliverystream/${DeliveryStream}",
        {
          "DeliveryStream": {"Ref": "DeliveryStream"}
        }
      ]}
    

    由于return valueAWS::KinesisFirehose::DeliveryStream 上是传递流名称

相关问题