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

问题描述:

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

当我定义AWS::Events::Rule时,有一个Targets属性需要有效目标的ARN。问题是AWS::KinesisFirehose::DeliveryStream资源不支持检索其ARN,并且Fn::Ref只是返回其逻辑ID。 (Fn::GetAtt可以用来获得AWS::Kinesis::Stream的ARN但并没有什么对AWS::KinesisFirehose::DeliveryStream

我要对一些错误的方式还是这只是一个尚未被CloudFormation支持的那些东西干什么?

你应该能够基于该ARN namespace的室壁运动流水

类似下面的假设AWS::KinesisFirehose::DeliveryStream资源被称为DeliveryStream(未测试)

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

由于return value上建立DeliveryStream ARN AWS::KinesisFirehose::DeliveryStream是送货流名称