当前位置: 首页 > 知识库问答 >
问题:

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

澹台举
2023-03-14

我正在制作一个CloudFormation模板,以捕获将CloudWatch事件发送到Kinesis Firehose交付流的流程的组件。(它在AWS中工作,通过控制台手动配置。)

当我定义AWS::E通风口::规则时,有一个目标属性需要有效目标的ARN。问题是AWS::Kinesis Firehose::DeliveryStream资源不支持检索其ARN,Fn::Ref只返回其逻辑ID。(Fn::GetAtt可用于获取AWS::Kinesis::Stream的ARN,但没有AWS::Kinesis Firehose::DeliveryStream。)

我是不是走错了路,或者这只是云阵还不支持的事情之一?

共有1个答案

孟思远
2023-03-14

您应该能够基于Kinesis Firehose的ARN命名空间构建DeliveryStream ARN

类似于以下内容的假设是,将AWS::KinesisFirehose::DeliveryStream资源称为DeliveryStream(未测试

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

由于AWS::Kinesis Firehose::DeliveryStream的返回值是Delivery Stream名称

 类似资料:
  • 我正在创建一个Cloudwatch事件规则,如果步骤函数进入故障或超时状态,它应该会触发lambda。云观察事件规则将参数传递给lambda,这将发送一封自定义的SNS电子邮件。我正在尝试将输入参数的值从我在云形成模板中设置的参数传递到Cloudwatch事件规则中。我无法让Cloudform将参数值提取出来,将它们放入Cloudwatch事件规则输入参数中。CF接受我在JSON中给出的文字值并将

  • 我正在尝试设置Cloudwatch事件规则来通知任何AWS IAM操作,例如DeleteUser或CreateUser。但是当我尝试创建事件模式时,我在服务名称列表中找不到IAM,即使当我在AWS留档中搜索时,我找不到Cloudwatch事件规则不支持IAM的提及。所以我尝试创建一个自定义事件,但我没有收到来自SNS(我的目标)的任何电子邮件,是的,我确保Cloudwatch具有调用SNS的权限,

  • 我想使用针对SNS主题的CloudWatch事件规则获取AWS Health的所有事件。 个人健康仪表板(AWS Health)在全球范围内运行,但CloudWatch事件规则设置在特定区域,例如EU-Central-1。 这里的问题是:我应该从AWS运行状况中检索所有区域的所有事件,还是将事件的范围限定到CloudWatch事件规则所在的区域?

  • 我希望能够设置一个AWS CloudWatch事件规则,每当我的一个Step函数完成时(成功或失败),该规则将触发SNS主题。我不想对所有的Step函数都执行此操作,但基于通用名称前缀,它们的数量将是不确定的。理想情况下,我希望能够这样做,但在事件模式中似乎不允许使用通配符。有没有创造性的方法来解决这个问题?

  • 我正在寻找一个CloudWatch事件规则/事件模式,以便在任何可用服务器的运行状况检查1/2通过时得到通知。当我探索时,得到了CloudWatch警报选项,但如果我有10个实例,那么我需要配置10个警报。我的目标是使用EC2事件或CloudTrail事件构建一个单独的cloudwatch规则,该规则将检测区域中所有服务器的EC2运行状况检查。

  • 我有一个附加在CloudWatch事件上的lambda,一旦事件触发,lambda将通过以下代码删除规则: 提前感谢!