如何为特定的CloudFormation堆栈创建“ aws.cloudformation” CloudWatch事件类型?

时间:2019-06-06 20:19:35

标签: amazon-web-services amazon-cloudformation amazon-cloudwatch amazon-cloudtrail

我需要为特定的CloudFormation堆栈创建aws.cloudformation事件类型。例如,当StackA收到UpdateStack事件时,我需要能够捕获该事件。

通过控制台,我能够创建以下事件规则(这是AWS API Call via CloudTrail类型的事件):

{
    "source": [
        "aws.cloudformation"
    ],
    "detail-type": [
        "AWS API Call via CloudTrail"
    ],
    "detail": {
        "eventSource": [
            "cloudformation.amazonaws.com"
        ],
        "eventName": [
            "UpdateStack",
            "CreateStack"
        ]
    }
}

但是,此事件不适用于任何特定的CloudFormation堆栈,并且我看不到任何添加特定内容的选项(例如,StackA得到UpdateStack调用时。

documentation for event types提供了其他事件类型的示例,以及如何添加触发事件的特定资源。例如,使用aws.codepipeline事件,您可以指定一个pipeline等于PipelineA的值,然后只要PipelineA进入您在其中指定的状态,该事件就会被触发State参数。

如何使用aws.cloudformation事件类型执行类似的操作?

2 个答案:

答案 0 :(得分:1)

不幸的是,据我所知,获取特定于堆栈的事件的唯一方法是堆栈内的通知配置,该配置只能在创建/更新时提供。

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-add-tags.html

答案 1 :(得分:-1)

我正在寻找类似的解决方案,发现它应该可以工作: https://aws.amazon.com/ru/blogs/mt/tracking-aws-service-catalog-products-provisioned-by-individual-saml-users/

Step5 aws events put-rule --name“ sc-add-user” --event-pattern“ {” source“:[” aws.cloudformation“],” detail-type“:[”通过CloudTrail进行AWS调用“], “ detail”:{“ eventSource”:[“ cloudformation.amazonaws.com”],“ eventName”:[“ CreateStack”]}}“