跳转到内容
搜索文档

可视化 Workflows

最后更新 查看 MarkdownAgent 设置

在 Cloudflare 仪表板中查看解析后的 Workflow 代码的可视化表示。

该图表展示顺序步骤与并行步骤、条件分支、循环以及嵌套逻辑。你可以折叠循环和条件分支以概览 Workflow,也可以展开查看更详细的视图。

示例示意图

Workflow 图表目前对所有 TypeScript 和 JavaScript Workers 处于 Beta 阶段。在 Cloudflare 仪表板 中查看你的 Workflows 及其图表。

节点类型

图表包含以下节点类型:

节点类型 描述
StepSleep 暂停 Workflow 执行指定时长。
StepDo 表示包装工作单元的具名、可重试步骤。
StepWaitForEvent 暂停执行直至收到外部事件。
StepSleepUntil 暂停 Workflow 执行直至指定日期和时间。
LoopNode 表示重复执行逻辑块的循环结构(forwhile 等)。
ParallelNode 将并发执行的步骤分组,例如 Promise.all() 内的步骤。
TryNode 表示 Workflow 内处理错误的 try...catch 块。
BlockNode 将一系列步骤分组为逻辑块以便展示。
IfNode 表示基于 if/else 表达式的条件分支。
SwitchNode 表示在多个 case 间路由执行的 switch 语句。
StartNode 标记 Workflow 或函数定义的入口点。
FunctionCall 表示 Workflow 代码中对具名函数的调用。
FunctionDef 表示 Workflow 内使用的函数定义。
BreakNode 表示提前退出循环的 break 语句。

执行顺序

每个节点都有 startsresolves 字段来跟踪执行顺序。这些索引表示 Promise 何时开始执行以及何时结束,相对于第一个开始但未立即结束的 Promise。这对应于图表中的垂直位置(即所有 starts: 1 的步骤将并排显示)。

解析时,未 await 的 Promise 或 Promise.all() 调用会被分配一个存入 starts 字段的条目编号。当遇到该 Promise 的 await 时,条目编号递增并作为退出编号保存到 resolves 字段。这使图表能够确定哪些 Promise 并发运行,以及每个 Promise 相对于其他 Promise 的完成时间。

如果在声明时 await 步骤,startsresolves 将为 undefined,Workflow 将按运行时看到的步骤顺序执行。

这篇文档对您有帮助吗?