我想在堆栈创建期间 AWS CloudFormation 堆栈进入 ROLLBACK_IN_PROGRESS 状态时收到警示电子邮件。
解决方法
当 CloudFormation 堆栈进入 ROLLBACK\ _IN\ _PROGRESS 状态时,Amazon EventBridge 可以向 Amazon Simple Notification Service (Amazon SNS) 主题发送通知。要创建事件模式与此 CloudFormation 事件匹配的 EventBridge 规则,请完成以下步骤。
**注意:**为确保您可以调用 EventBridge 规则,请在 CloudFormation 堆栈所在的 AWS 区域中创建规则。
创建 SNS 主题并订阅警示电子邮件
要创建 SNS 主题并订阅警示电子邮件,请完成以下步骤:
- 打开 Amazon SNS 控制台。
- 在导航窗格中,选择主题。
**注意:**要使用现有主题,请从资源列表中选择该主题,然后跳至步骤 7。
- 选择创建主题。
- 在名称中,输入主题名称。
- 在显示名称中,输入显示名称。
- 选择创建主题。
- 记下 SNS 主题的 ARN 以备后期使用。
- 选择创建订阅。
- 对于主题 ARN,选择您在步骤 7 中记下的 SNS 主题 ARN。
- 对于协议,选择电子邮件。
- 对于端点,输入您的电子邮件地址。
- 选择创建订阅。
- 查看电子邮件收件箱中是否有来自 Amazon SNS 的订阅确认电子邮件。然后,选择确认订阅以在浏览器中查看订阅确认消息。
创建 EventBridge 规则
要创建 EventBridge 规则,请完成以下步骤:
-
打开 Amazon EventBridge 控制台。
-
在导航窗格中,选择规则。
-
选择创建规则。
-
输入规则的名称和描述(可选)。
-
对于事件总线,选择 AWS 默认事件总线。
-
对于规则类型,选择具有事件模式的规则。
-
选择下一步。
-
对于创建方法,选择自定义模式(JSON 编辑器)。
-
对于事件模式,复制其中一个示例事件模式。
当 CloudFormation 堆栈状态更改为 ROLLBACK_IN_PROGRESS 时,以下示例事件模式使用事件详细数据来匹配堆栈状态更改事件:
{
"source": [
"aws.cloudformation"
],
"detail-type": [
"CloudFormation Stack Status Change"
],
"detail": {
"status-details": {
"status": [
"ROLLBACK_IN_PROGRESS"
]
}
}
}
-
选择下一步。
-
对于目标类型,选择 AWS 服务。
-
对于选择目标,从下拉列表中选择 SNS 主题。
-
对于主题,选择您为警示电子邮件创建的 Amazon SNS 主题。
-
选择下一步。
-
向规则添加任何相关标签,然后选择下一步。
-
查看规则配置,然后选择创建规则。
相关信息
使用 Amazon EventBridge 管理 AWS CloudFormation 事件
创建对事件做出反应的 Amazon EventBridge 规则