Server 执行日志
执行日志用于查看远程 workflow 的运行记录。它位于项目详情的“执行日志”工作区,只展示已发布版本或 latest 的运行,不把 draft 记录混入普通列表。
日志表格
日志表格按页读取运行摘要,并提供紧凑筛选:
- 按执行 ID、workflow 名称、会话 ID、target 或 resolved target 搜索。
- 按全部、进行中、等待中、成功、失败、取消或超时筛选。
- 按Desktop、External API、Embed、Webhook、会话或 API Key 等运行来源筛选。
- 展示当前页范围和服务端过滤后的总数。
- 使用上一页/下一页分页,不把下一页追加到当前列表。
表格展示执行 ID、状态、目标版本、Workflow 入口标题/ID、创建时间和耗时。状态不会只靠颜色表达,也会显示中文状态 badge。Run ID 在空间不足时省略,但保留完整 title。入口标题来自 run 创建时的快照,不随后续 draft 或版本改名;旧记录缺少入口字段时显示“默认/旧版入口”。
使用Desktop 登录产生的 API Key 发起远程运行时,Server 会把该 run 标记为 external.source = "desktop"。GET /api/workflows/{workflowName}/runs?source=desktop 只返回这类 Desktop 运行;CLI 或普通手工 API Key 不会被标记为 Desktop 来源。
行级操作
每条日志提供常用操作:
| 操作 | 说明 |
|---|---|
| 执行回放 | 打开只读 Run workspace 回放;启用 Embed 时可进入对应会话深链。 |
| 详细日志 | 打开居中弹框,查看 stdout、stderr、runner diagnostics 和 report.json。 |
| 停止运行 | 对 running 或 waiting 的 run 显示停止入口,并在确认后取消运行。 |
读取、停止和切换期间,按钮会禁用并显示 loading;失败时错误会显示在当前页面反馈区域。
回放
执行回放用于查看 workflow 的用户可见输出:
- 普通 workflow 显示精确 resolved target、入口标题/ID、参数摘要、状态和 Output。
- conversation workflow 按同一个
conversation_id汇总 transcript。 - 业务计时、附件入口和 output item 使用与 Desktop / Embed 一致的展示方式。
- 流式正文和工具结果会保持完整 Unicode 字符,不会因数据分段显示替换字符。
- 公开 Embed 的流式输出仅在视图停留最底部时自动跟随;用户主动向上滚动后保持当前位置,回到底部再恢复。
- 大型 args、report 和 output item 会裁剪为可展开预览,避免一次性渲染过多内容。
回放是只读视图,不提供重新运行、上传或新建会话入口。
等待输入恢复会继续使用记录中的精确 resolvedTarget + entrypointId,提交接口不能切换入口。若等待期间 draft 删除了原入口,恢复返回 409,不会改用当前默认入口;旧记录没有入口字段时才按原精确目标的默认入口兼容处理。
详细日志
详细日志弹框用于排查单条 run record,包含:
- 执行画像:状态、target、耗时、创建时间、来源、conversation、API Key 和执行用户。
- 日志摘要:stdout、stderr、
report.json是否存在。 - 可搜索日志:stdout、stderr、runner diagnostics 和
report.json。 - 只读 JSON 查看器:支持搜索定位、上一个和下一个匹配。
stdout、stderr、runner diagnostics 和 report.json 默认展开,并可逐项手动折叠。每个区域会占满弹框的可用内容宽度;长文本和 JSON 在有界的独立滚动区中浏览,折叠 report.json 后不会保留固定高度的空白。
如果只想查看用户可见输出,请使用执行回放;如果要排查 runner、节点报告或 stderr,请使用详细日志。
运行状态
| 状态 | 含义 |
|---|---|
running | 正在执行。 |
waiting | 等待用户输入或队列调度。 |
success | 已成功完成。 |
failed | 执行失败。 |
aborted | 已取消。 |
timed_out | 超时或旧运行占位已失效。 |
External Run API 会把成功且 errCode === 0 的结果映射为 succeeded;如果 workflow 返回非零 errCode,即使进程正常退出,也会按失败处理。
移动端与深色模式
移动端表格保留可读状态和可触达操作按钮;回放抽屉占满可用宽度,详细日志弹框使用安全边距和内容区滚动。深色模式下,状态 badge、筛选控件、表格、抽屉和弹框都保持可辨认。