我正在尝试删除不再需要的过时步骤功能,但是现在已经停留在“删除”阶段几周了。但是从控制台它说有0个正在执行的执行。如果当前没有正在运行的执行,如何删除状态机?
答案 0 :(得分:3)
在撰写本文时,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