执行监控与日志
执行列表、实时事件流、日志 / 成本 / tokens、错误定位 —— 把运行状态看清楚。
工作流跑起来之后,能不能看懂"它到底做了什么、花了多少",决定你敢不敢把它放进生产。这一页讲执行列表、执行详情、实时事件、token 与成本记录、导出和数据看板。
执行列表页
左侧导航「执行历史」。支持卡片和表格两种视图,有执行在运行时列表自动刷新(可暂停)。筛选与排序:
- 关键字搜索 —— 按执行 ID 或工作流名称
- 状态筛选 —— PENDING / RUNNING / COMPLETED / FAILED / CANCELLED / INTERRUPTED
- 工作流筛选 —— 只看某一条工作流的历史
- 排序 —— 开始时间 / 完成时间 / 耗时 / 工作流 / 状态 / 进度
列表顶部还有一排带计数的快捷筛选(运行中 / 失败 / 已完成 / 已中断),点一下切换。
每条记录显示的信息
- 状态徽标 + 执行 ID + 工作流名称
- 进度条与步骤完成数(例:5/7)
- 开始时间(相对时间)与耗时
- RUNNING 的记录额外显示当前正在跑的步骤
- 已结束的记录可以直接在行内导出 JSON / YAML
多选之后可以批量取消运行中的执行,或批量删除已结束的记录。
PENDING— 已创建、还没开始跑。超出并发上限的执行会先排队在这个状态,前面的执行完成后自动转 RUNNING。RUNNING— 至少一个步骤在执行。COMPLETED— 全部步骤跑完(包括因 condition 不满足被 SKIPPED 的步骤)。FAILED— 某个步骤出错,执行以失败结束。CANCELLED— 用户手动取消。INTERRUPTED— 被服务重启等系统原因中断。是否自动续跑见下方"下一步"里的自动续跑页。
执行详情页
点任意一条执行进入详情页。从上到下:
- 顶栏 —— 取消、刷新、导出(JSON / YAML)、跳转到对应的工作流编辑器
- 状态卡 —— 状态、进度、耗时,以及 token 快览(发送 / 接收 / 合计)
- 主区标签页(见下表)
- 底部「执行日志」流 —— 全部事件的滚动日志,可按级别(debug / info / warn / error)过滤、按关键字搜索、暂停自动滚动
| 标签页 | 内容 |
|---|---|
| 步骤 | 竖排时间线:每步的状态、耗时、迭代进度。点击打开步骤详情侧栏;执行结束后可从指定步骤重跑。 |
| 对话 | 把 Agent 发言、LLM 输出、工具调用、系统消息按时间合成一条聊天流。 |
| 外部消息 | 只看 IM 渠道的收发记录(Slack / Telegram 等)。 |
| DAG | 按依赖关系画出的步骤图,运行状态实时着色。 |
| 回放 | 按时间轴重放这次执行的过程。 |
| 推理链 | Agent 的中间推理内容。 |
| 产物 | 全部产物文件:预览、下载、单文件分享,或者把整个目录生成一个公开链接。 |
| 性能 | 执行结束后的耗时分析。 |
| 调试 | 设置过断点或有调试会话时出现。 |
步骤详情侧栏
点时间线里的某一步,右侧滑出这一步的全部信息:输出、事件、推理、产出物、对话几个分页(迭代 / 交互 / 编排类步骤有对应的附加分页),外加起止时间和「从此步骤重新执行」按钮。失败步骤的错误信息和重试次数也在这里看。
实时更新(WebSocket)
执行处于 RUNNING 状态时,详情页通过 WebSocket 接收增量更新,不需要手动刷新。连接断开会自动重连(指数退避,最多 5 次);仍失败则自动降级为每 2 秒轮询并提示。
推送消息类型
| 类型 | 含义 |
|---|---|
full_status | 执行状态全量快照 |
status_change | 执行状态 / 进度变化 |
step_update | 单个步骤的状态更新 |
new_event | 新的执行事件(见下方事件类型) |
artifact_found | 新产物文件生成 |
user_interaction_request | 步骤请求人工输入,对话页会出现回复框 |
事件类型一览
每个步骤的事件流用 type 字段区分事件种类。常见类型按家族列出:
| 事件类型 | 含义 |
|---|---|
agent_starting / agent_completed / agent_failed | Agent 步骤的生命周期 |
llm_call_starting / llm_call_completed | 一次 LLM 调用;completed 事件带这次调用的 token 计数 |
llm_streaming_starting / llm_streaming_completed / llm_streaming_failed | 流式 LLM 输出 |
tool_call_starting / tool_call_completed / tool_call_failed | Agent 工具调用,含参数与结果摘要 |
external_message / im_message / telegram_message | IM 渠道的消息收发 |
group_chat_started / group_chat_message / group_chat_summarizing / group_chat_completed | group_chat 步骤的多 Agent 讨论过程 |
state_machine_started / state_machine_transition / state_machine_state_completed | state_machine 步骤的状态流转 |
agent_based_started / agent_based_completed | agent_based 编排步骤的委派过程 |
user_interaction_request / user_interaction_message / user_interaction_timeout | 执行中向用户提问、收到回复、等待超时 |
claude_code_* | Claude Code 运行时的流式进度事件 |
事件同时带一个 category 字段(agent / llm / tool / message / strategy / user_interaction),对话页的类别筛选按它分组。
对话视图的筛选
- 关键字搜索 —— 在消息内容和发言者里搜
- 按 Agent 筛选 —— 只看某个 Agent 或步骤的消息
- 类别筛选 —— Agent / LLM / 工具 / 外部消息 / 策略 / 交互
- 自动滚动开关 —— 新消息到达时是否跟随滚到底部
token 与成本
- LLM 相关事件逐次记录 input / output token,状态卡实时累加显示发送 / 接收 / 合计。
- 执行结束后,
GET /api/executions/{executionId}/cost按所用模型的价格估算这次执行的成本,返回总额和每一步的明细。 - 成本是事后按 token 用量估算的;平台不提供运行前报价。
导出执行过程
详情页顶栏或列表行的「导出」把一次执行导出为 JSON 或 YAML 文件,内容包括执行状态、结果、性能指标,以及导出时刻的工作流定义快照与 YAML 源码。密码、API Key、webhook 地址等敏感字段会自动替换为 [REDACTED]。文件名形如 execution-process-79621f70-completed.json。
导出里的工作流定义是导出时拉取的当前版本;如果工作流在这次执行之后被改过,它可能和执行当时的定义不同。
数据看板
跨执行的聚合视图在 执行分析 看板:总执行次数、成功率、平均耗时、token 总用量,加上执行趋势、状态分布和 Top 工作流排行,时间范围可选 24 小时 / 7 天 / 30 天。
错误定位
执行 FAILED 时,先在时间线里找红色的那一步,点开步骤详情:错误信息在「输出」分页,过程细节在「事件」分页(code 步骤的 stderr 也在这里)。重试过的步骤会显示重试次数。
常见错误的处理方式见 问题排查。
保留期
执行记录(状态、结果、事件、性能数据)和产物文件默认保留 90 天,到期由平台定期清理;具体期限以你的计划或部署配置为准,执行还在跑时不会被清理。