如何删除陷入“删除”循环的 AWS Step Functions 状态机

Aar*_*n_H 3 amazon-web-services aws-step-functions

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

Aar*_*n_H 10

在撰写本文时,AWS Step Functions 控制台仅提取最近的 1000 次执行。所以当它说 0 running executions 时,它只是描述了最近 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
Run Code Online (Sandbox Code Playgroud)

要自动删除每个正在运行的执行,请运行:

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
Run Code Online (Sandbox Code Playgroud)

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

aws stepfunctions delete-state-machine --state-machine-arn $STATE_MACHINE_ARN
Run Code Online (Sandbox Code Playgroud)