0

我正在运行一个具有映射状态的状态机,并且该映射迭代触发其他状态机的任务类型的项目。现在,当子状态机失败时,即使我为任何类型的错误配置了通配符(States.ALL),父状态机也不会捕获错误。我究竟做错了什么?如何从子状态机捕获错误?

{
  "StartAt": "Child",
  "States": {
    "Child": {
      "Type": "Map",
      "MaxConcurrency": 15,
      "ItemsPath": "$.child_items",
      "Iterator": {
        "StartAt": "Execute child state machine",
        "States": {
          "Execute forecast state machine": {
            "Type": "Task",
            "Resource": "arn:aws:states:::states:startExecution.sync:2",
            "Parameters": {
              "StateMachineArn": "${ChildStateMachineArn}",
              "Input": {
                "epoch.$": "$.epoch",
                "execution_date.$": "$.execution_date"
              }
            },
            "End": true
          }
        }
      },
      "Catch": [
        {
          "ErrorEquals": [
            "States.ALL"
          ],
          "Next": "Failure"
        }
      ],
      "Next": "Next Module",
      "ResultPath": null
    },
    "Next Module": {
      "Type": "Map",
      "MaxConcurrency": 10,
      "ItemsPath": "$.next_module",
      "Iterator": {
        .
        .
        .
      },
      "Next": "Success",
      "ResultPath": null
    }
        .
        .
        .
        .
        .
        .
  }
}
4

0 回答 0