如何删除卡在 "deleting" 循环中的 AWS Step Functions 状态机

How to I delete an AWS Step Functions state machine stuck in a "deleting" loop

我正在尝试删除一个不再需要的过时步骤函数,但是它已经停留在 "deleting" 阶段几个星期了。但是从控制台它说有 0 运行 次执行。如果当前没有 运行 次执行,如何删除状态机?

在撰写本文时,AWS Step Functions 控制台仅提取最近 1000 次执行。所以当它说 0 运行ning 次执行时,它只是描述了最后 1000 次执行。

为了查看所有当前 运行ning 执行,您需要使用 AWS CLI。您可以通过 运行ning(在 unix shell 中)执行此操作:

export STATE_MACHINE_ARN=#Enter the state machine arn, arn:aws:states:...    
aws stepfunctions list-executions --state-machine-arn $STATE_MACHINE_ARN --status-filter RUNNING --output text

要自动删除每个 运行ning 执行,运行:

aws stepfunctions list-executions --state-machine-arn $STATE_MACHINE_ARN --status-filter RUNNING --output text | awk '{print }' | xargs -n 1 aws stepfunctions stop-execution --error "Manual Abort" --execution-arn

您将看到返回的每个执行的停止时间。完成后,您可以使用

再次完成删除
aws stepfunctions delete-state-machine --state-machine-arn $STATE_MACHINE_ARN