我正在尝试删除不再需要的过时步进功能,但是它已经在“删除”阶段停留了几个星期。但是从控制台它说有 0 个正在运行的执行。如果当前没有正在运行的执行,如何删除状态机?
问问题
4320 次
1 回答
11
在撰写本文时,AWS Step Functions 控制台仅提取最近的 1000 次执行。因此,当它说 0 个正在运行的执行时,它只是描述了最后 1000 次执行。
为了查看所有当前正在运行的执行,您需要使用 AWS CLI。您可以通过运行(在 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
要自动删除每个正在运行的执行,请运行:
aws stepfunctions list-executions --state-machine-arn $STATE_MACHINE_ARN --status-filter RUNNING --output text | awk '{print $2}' | xargs -n 1 aws stepfunctions stop-execution --error "Manual Abort" --execution-arn
您将看到返回的每个执行的停止时间。完成后,您可以使用
aws stepfunctions delete-state-machine --state-machine-arn $STATE_MACHINE_ARN
于 2017-10-19T02:50:09.623 回答