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

How can I create an "aws.cloudformation" CloudWatch event type for a specific CloudFormation stack?

我需要为特定的 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 事件类型做类似的事情?

不幸的是(据我所知)获得 stack-specific 事件的唯一方法是堆栈内的通知配置,只能在 creation/update.[=11= 上提供]

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

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

第五步 aws events put-rule --name "sc-add-user" --event-pattern "{"source":["aws.cloudformation"],"detail-type":[" AWS API 通过 CloudTrail 调用"],"detail":{"eventSource":["cloudformation.amazonaws.com"],"eventName":["CreateStack"]}}"