一般故障排除 - Amazon Step Functions
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

一般故障排除

我无法创建状态机。

与状态机关联的 IAM 角色可能没有足够的权限。检查 IAM 角色的权限,包括 Amazon 服务集成任务、X-Ray 和 CloudWatch 日志记录的权限。.sync 任务状态需要额外的权限。

我无法使用 JsonPath 来引用上一个任务的输出。

JsonPath 的 JSON 密钥必须以 .$ 结尾。这意味着 JsonPath 只能在键值对中使用。如果想在其他地方使用 JsonPath(比如数组),则可以使用内置函数。例如,可以使用类似以下代码的内容:

任务 A 的输出:

{ "sample": "test" }

任务 B:

{ "JsonPathSample.$": "$.sample" }
提示

使用 Step Functions 控制台中的数据流模拟器来测试 JSON 路径语法,以更好地了解在状态下如何操作数据,并查看数据在状态之间是如何传递的。

状态转换出现延迟。

对于标准工作流,状态转换的数量是有限制的。当超过状态转换限制时,Step Functions 会延迟状态转换,直到配额存储桶填满。可以通过查看 CloudWatch 指标页面 执行指标 部分中的 ExecutionThrottled 指标来监控状态转换限制节流。

启动新的标准工作流执行时,会执行失败并出现 ExecutionLimitExceeded 错误。

Step Functions 对每个 Amazon Web Services 区域的每个 Amazon Web Services 账户的开放执行次数限制为 100 万次。如果超过此限制,Step Function 会抛出 ExecutionLimitExceeded 错误。此限制不适用于快速工作流。您可以使用《Amazon CloudWatch 用户指南》中的以下 CloudWatch Metrics 数学来估算开放执行次数:ExecutionsStarted - (ExecutionsSucceeded + ExecutionsTimedOut + ExecutionsFailed + ExecutionsAborted)

一个处于并行状态的分支出现故障,导致整个执行失败。

这是一个预期行为。为避免在使用并行状态时遇到故障,请将 Step Functions 配置为捕获每个分支抛出的错误