选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

Fail 工作流程状态

聚焦模式
Fail 工作流程状态 - AWS Step Functions

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

管理状态和转换数据

Fail 状态 ("Type": "Fail") 将停止状态机的执行并将其标记为故障,除非被 Catch 块捕获。。

Fail 状态仅允许使用常用状态字段集合中的 TypeComment 字段。此外,Fail 状态允许以下字段。

Cause(可选)

描述错误原因的自定义字符串。您可以指定此字段用于操作或诊断目的。

在 JSONata 状态中,您还可以指定 JSONata 表达式。

CausePath( JSONPath 仅限可选)

如果要使用参考路径从状态输入中动态提供有关错误原因的详细描述,请使用 CausePath。解决后,参考路径必须选择包含字符串值的字段。

您也可以使用返回字符串的内置函数来指定 CausePath。这些内置函数包括:States.FormatStates.JsonToStringStates.ArrayGetItemStates.Base64EncodeStates.Base64DecodeStates.HashStates.UUID.

重要
  • 您可以在 Fail 状态定义中指定 CauseCausePath,但二者不能同时指定。

  • 作为信息安全最佳实操,我们建议您从原因描述中删除任何敏感信息或内部系统详细信息。

Error(可选)

使用 RetryCatch 字段执行错误处理时可以提供的错误名称。您也可以提供错误名称用于操作或诊断目的。

在 JSONata 状态中,您还可以指定 JSONata 表达式。

ErrorPath( JSONPath 仅限可选)

如果要使用参考路径从状态输入中动态提供错误的名称,请使用 ErrorPath。解决后,参考路径必须选择包含字符串值的字段。

您也可以使用返回字符串的内置函数来指定 ErrorPath。这些内置函数包括:States.FormatStates.JsonToStringStates.ArrayGetItemStates.Base64EncodeStates.Base64DecodeStates.HashStates.UUID.

重要
  • 您可以在 Fail 状态定义中指定 ErrorErrorPath,但二者不能同时指定。

  • 作为信息安全最佳实操,我们建议您从错误名称中删除任何敏感信息或内部系统详细信息。

由于 Fail 状态始终会退出状态机,它们没有 Next 字段,也不需要 End 字段。

Fail 状态定义示例

以下 Fail 状态定义示例指定了静态 ErrorCause 字段值。

"FailState": { "Type": "Fail", "Cause": "Invalid response.", "Error": "ErrorA" }

以下 Fail 状态定义示例使用参考路径动态解析 ErrorCause 字段值。

"FailState": { "Type": "Fail", "CausePath": "$.Cause", "ErrorPath": "$.Error" }

以下 Fail 状态定义示例使用 States.Format 内置函数动态指定 ErrorCause 字段值。

"FailState": { "Type": "Fail", "CausePath": "States.Format('This is a custom error message for {}, caused by {}.', $.Error, $.Cause)", "ErrorPath": "States.Format('{}', $.Error)" }

本页内容

下一主题:

教程和研讨会

上一主题:

Succeed
隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。