我正在创建一个Cloudwatch事件规则,如果步骤函数进入失败或超时状态,该规则将触发lambda。云监控事件规则将参数传递给lambda,lambda将发送自定义SNS电子邮件。我正在尝试将输入参数的值从我在Cloudformation模板中设置的参数传递到Cloudwatch事件规则中。我无法让Cloudformation提取参数值,将它们放入Cloudwatch Event Rule输入参数中。CF获取我在JSON中给出的字面值,并将其放入Cloudwatch事件规则中。我正在使用一个带有JSON参数文件的YAML模板。发布下面的代码。

FailureEvent:
Type: AWS::Events::Rule
DependsOn:
  - StateMachine
Properties:
  Description: !Ref FailureRuleDescription
  Name: !Ref FailureRuleName
  EventPattern:
    detail-type:
      - "Step Functions Execution Status Change"
    detail:
      status:
        - "FAILED"
        - "TIMED_OUT"
      stateMachineArn: [!Ref StateMachine]
  Targets:
    - Arn:
        'Fn::Join': ["", ['arn:aws:lambda:', !Ref 'AWS::Region', ':', !Ref 'AWS::AccountId', ':function:', !Ref FailureLambda]]
      Id: !Ref FailureLambda
      Input: '{"failed_service": "!Ref StateMachineName","sns_arn": {"Fn::Join":[":",["arn: aws: sns",{"Ref": "AWS: : Region"},{"Ref": "AWS::AccountId"},{"Ref": "SNSTopic"}]]}}'

转载请注明出处:http://www.hrtxgs.com/article/20230526/1035185.html

随机推荐

  1. CloudFormation中的嵌套堆栈

    我最近访问了AWS的一个Dev帐户。我在浏览CloudFormation模板时,并不了解某些模板的行为。我点击了其中一个CloudFormation堆栈名称,里面显示了大约5个嵌套的堆栈。当我检查这个堆栈的模板时,我找不到任何可以证明它使用...

  2. 如何在CloudFormation中指定myIP

    当我通过控制台创建安全组时,我可以将其定义为myIP。这是保持我的入口连接安全,它是非常方便的。现在,当我使用CloudFormation yml文件创建新的安全组时,如何指定?可能,它需要一个外部脚本来获取当前IP并使用它。有什么简单的方...

  3. 如何在AWS SAM或Cloudformation中添加身份提供者

    我正在尝试添加一个身份提供者,就像在我的SAM应用程序中描述的here一样。当我运行sam deploy时,我得到以下错误:The attribute mapping is missing required attributes [nick...

  4. cloudformation模板中的模板参数属性numRetries‘无效

    我正在使用cloudformation模板,并且有几个SNS订阅我正在尝试添加。(我在这方面也是个新手)有一组参数对所有参数都是重复的。我试图将它添加到参数块中,但得到的模板参数属性numRetries‘无效。我也在使用YAML。metho...

  5. 在CloudFormation中引入自定义资源条件

    另一位工程师在prod堆栈中的AMIFInder自定义资源中引入了deploy date参数,这意味着如果不尝试重新创建EC2实例,我们将无法再更新开发堆栈。是否有可能引入一个纯粹基于DeployDate参数的条件,这样我仍然可以对两个堆栈...

  6. 如何在cloudformation中引用ImportValue中的变量?

    我有一个cloudformation模板,需要根据传入的参数导入一个值。下面是代码。但是我不能把!ImportValue和!Ref结合起来。如何在ImportValue函数中使用EnvironmentName?Parameters: ...

  7. 通过AWS CloudFormation中的参数排除/包含资源

    我有一个模板,其中包括3个资源。有没有办法通过使用我的模板的一个参数来以编程方式排除3个资源中的1个?(这与我在模板中注释掉不需要的资源得到的结果是一样的)

  8. 如何在cloudformation中的`!If`条件中使用多行?

    我在cloudformation模板中使用了!If条件。下面的代码有一个在AWS::CodeBuild::Project项目中添加或删除Triggers的条件ShouldAddWebHook。当我运行deploy命令时,我得到了这个错误。为...

  9. 是否可以在CloudFormation模板中创建CloudWatch计划事件?

    我知道我可以通过AWS控制台创建一个预定的云监控活动:https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/Create-CloudWatch-Events-Scheduled...

  10. 如何在CloudFormation中使用嵌套列表?

    我想在EC2实例上附加3个安全组。一个是在模板中创建的,另外两个是我使用映射的地方。当我像这样使用时,我得到了一个错误。Mappings: envMap: qa: securityGroups: -...