按操作查看堆栈事件 - Amazon CloudFormation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

按操作查看堆栈事件

您可以查看按操作分组的堆栈事件,以更好地了解对您的堆栈所做更改的顺序和范围。基于操作的分组可帮助您一起跟踪相关事件,从而更轻松地监控进度并在问题发生时对其进行故障排查。

每个堆栈操作(创建、更新、删除、回滚)都会被分配一个唯一的操作 ID,用于对所有相关事件进行分组。这使您能够专注于特定的操作,并迅速找出故障的根本原因。

先决条件

要使用 DescribeEvents API,您必须具有必要 IAM 权限:DescribeEvents

按操作查看堆栈事件(控制台)

要查看按操作分组的堆栈事件
  1. 登录到 Amazon Web Services 管理控制台 并打开 Amazon CloudFormation 控制台 https://console.aws.amazon.com/cloudformation

  2. 在屏幕顶部的导航栏中,选择您在其中创建了堆栈的 Amazon Web Services 区域。

  3. 堆栈页面上,选择堆栈名称。CloudFormation 将显示选定堆栈的堆栈详细信息。

  4. 选择事件选项卡以查看 CloudFormation 为堆栈生成的堆栈事件。

  5. 事件会按照操作 ID 自动进行分组。每个操作都会以可展开的部分呈现,该部分会显示操作类型、状态以及时间戳。

  6. 单击操作 ID 可打开详细视图,该视图仅显示与该特定操作相关的事件。

  7. 在操作详细信息视图中,选中仅显示故障复选框,以仅显示用于根本原因分析的失败事件。

CloudFormation 每分钟自动刷新堆栈事件。新堆栈事件发生时显示新堆栈事件可用徽章。选择“刷新”图标可将这些事件加载到列表中。

通过查看按操作分组的堆栈事件,您可以了解每个操作的事件顺序,并快速确定哪个特定操作导致了问题(如果您正在调试堆栈)。

当您的堆栈操作正在运行时,其会被列出 CREATE_IN_PROGRESSUPDATE_IN_PROGRESSDELETE_IN_PROGRESS 状态。成功完成操作后,其状态将更改为 CREATE_COMPLETEUPDATE_COMPLETEDELETE_COMPLETE

有关更多信息,请参阅了解 CloudFormation 堆栈创建事件监控堆栈更新的进度

按操作查看堆栈事件(Amazon CLI)

您可以使用带有操作 ID 筛选功能的 describe-events 命令,以查看特定操作的事件。

获取上次操作 ID

通过 describe-stacks API 提供的堆栈描述现在包括显示最近的操作 ID 及其类型的 LastOperations 信息。这使得您能够迅速确定哪些操作已经完成以及它们的当前状态,而无需通过事件日志进行解析。

aws cloudformation describe-stacks --stack-name MyStack

以下是响应示例,显示最后一个操作是更新操作失败后的回滚。

{ "Stacks": [ { "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/MyStack/07580010-bb79-11f0-8f6c-0289bb5c804f", "StackName": "MyStack", "Description": "A simple CloudFormation template to create an S3 bucket.", "CreationTime": "2025-11-07T01:28:13.778000+00:00", "LastUpdatedTime": "2025-11-07T01:43:39.838000+00:00", "RollbackConfiguration": {}, "StackStatus": "UPDATE_ROLLBACK_COMPLETE", "DisableRollback": false, "NotificationARNs": [], "Tags": [], "EnableTerminationProtection": false, "DriftInformation": { "StackDriftStatus": "NOT_CHECKED" }, "LastOperations": [ { "OperationType": "ROLLBACK", "OperationId": "d0f12313-7bdb-414d-a879-828a99b36f29" }, { "OperationType": "UPDATE_STACK", "OperationId": "1c211b5a-4538-4dc9-bfed-e07734371e57" } ] } ] }

按操作 ID 筛选事件

下面的 describe-events 命令描述了特定操作 ID 的事件:

aws cloudformation describe-events \ --operation-id 1c211b5a-4538-4dc9-bfed-e07734371e57

要仅查看失败事件以进行故障排除,请使用 --filter FailedEvents=true 参数:

aws cloudformation describe-events \ --operation-id 1c211b5a-4538-4dc9-bfed-e07734371e57 \ --filter FailedEvents=true

新的操作 ID 筛选功能使您能够专注于特定操作及其相关事件。此功能特别适用于:

  • 对特定故障进行故障排除:将事件与失败的操作隔离开来,以了解出了什么问题。

  • 监控长期运行的操作:跟踪复杂的更新或大型堆栈部署的进度。

  • 审计更改:审核与特定更新操作相关的所有事件。

  • 根本原因分析:使用故障筛选器快速确定部署问题的根源。

堆栈状态代码

下表列出了 describe-events 命令在使用操作 ID 筛选时返回的字段:

字段 描述
EventId 事件标识符。
OperationId 生成此事件的操作的唯一标识符。
StackName 事件对应的堆栈名称。
StackId 事件对应的堆栈标识符。
LogicalResourceId 资源的逻辑标识符。
PhysicalResourceId 资源的物理标识符。
ResourceProperties 资源的属性。
ResourceType 资源类型。
Timestamp 事件发生的时间。
ResourceStatus 资源的状态(CREATE_COMPLETEUPDATE_FAILED 等)。
DetailedStatus 堆栈的具体状态。如果 CONFIGURATION_COMPLETE 存在,则堆栈资源配置阶段已完成,资源的稳定化正在进行中。
ResourceStatusReason 有关状态的更多信息。