docs: 日志与运行状态 runbook,信息架构与定时任务入口更新
Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Cxwgnn2pbzQ7rXv3rq7fei
This commit is contained in:
1 parent
a1440401c4
commit
2f90666183
3 files changed
+46
-1
No files matched your search
@@ -372,3 +372,9 @@ W10 已补(2026-09-28):
|
|||||||
- 铃铛(`inbox-bell.tsx`)只放两组:等你批准、系统健康;数据来自 `GET /attention`。
|
- 铃铛(`inbox-bell.tsx`)只放两组:等你批准、系统健康;数据来自 `GET /attention`。
|
||||||
- 首页「要我处理」与运行状态「需要关注」(`#attention`)放汇总计数(「3 条整理需要处理」「1 个站点不可达」),点进去到对应页面;只列非零项。
|
- 首页「要我处理」与运行状态「需要关注」(`#attention`)放汇总计数(「3 条整理需要处理」「1 个站点不可达」),点进去到对应页面;只列非零项。
|
||||||
- 运行状态另有「智能体用量」(今天 / 最近 7 天按会话类型的次数与花费);智能体不设次数和花费上限。
|
- 运行状态另有「智能体用量」(今天 / 最近 7 天按会话类型的次数与花费);智能体不设次数和花费上限。
|
||||||
|
|
||||||
|
## 8. 界面第二轮:系统组只留日志、运行状态、设置(2026-10-06)
|
||||||
|
|
||||||
|
- 侧栏 4 组 13 项:概览(首页、智能体会话)/ 获取 / 整理 / 系统(日志、运行状态、设置)。任务、审计、引擎面板、计划不再有入口。
|
||||||
|
- 日志页 `/console/logs`:任务、定时与自动、登录、审计合成一份列表,可实时追加、勾选后问智能体;第二个页签「定时任务」是原计划页。旧地址:`/console/tasks`(含 `?tab=` `?status=` `?kind=&ref=` `?run=`)、`/console/engine(/:id)`、`/console/audit`(`?targetType=&targetId=` → 对象筛选)、`/console/schedules(?job=)` 都跳到日志页对应筛选;`/console/tasks/:id` 独立页保留,侧栏高亮「日志」。
|
||||||
|
- 运行状态页加「资源」节(CPU / 内存 / 网络 / 磁盘读写与趋势),首页「存储情况」卡换成运行状态简版卡。细节见 `docs/runbook/logs.md`。
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
# 日志与运行状态
|
||||||
|
|
||||||
|
界面第二轮(2026-10-06)起,侧栏「系统」只有三项:**日志**、**运行状态**、**设置**。原来的任务、审计、工作流引擎面板、计划页都并进日志页,旧地址自动跳转(`apps/web/app/routes/console/redirects.ts`)。
|
||||||
|
|
||||||
|
## 日志页 `/console/logs`
|
||||||
|
|
||||||
|
一份按时间倒序的列表,不新建表,查询时把四个来源合起来(`apps/server/src/modules/logs/`):
|
||||||
|
|
||||||
|
| 类型 | 来源 | 时间 | 对象 | 结果 |
|
||||||
|
| --- | --- | --- | --- | --- |
|
||||||
|
| 任务 `task` | 引擎运行 `openworkflow.workflow_runs` | 创建时间 | 业务对象(下载任务、整理记录、订阅、定时任务…) | 进行中 / 成功 / 失败;取消、智能体超出预算或停止为警告 |
|
||||||
|
| 定时与自动 `auto` | 定时任务运行 `scheduled_job_run`(含智能体巡检)、智能体后台调查 `agent_run`(trigger=event,非子会话) | 开始时间 | 定时任务 / 会话 | 成功 / 失败 / 已跳过(信息)/ 进行中 |
|
||||||
|
| 登录 `auth` | 审计里 `admin.*`、`api_key.*`(登录、登录失败、退出、二次验证、Passkey、改密、API Key 增改撤) | 事件时间 | 审计目标 | 登录成功为成功,登录失败为警告,其余为信息 |
|
||||||
|
| 审计 `audit` | 其余审计事件 | 事件时间 | 审计目标 | 智能体操作被拒绝为警告,其余为信息 |
|
||||||
|
|
||||||
|
- **筛选**(都写在 URL):`type`、`level`(running / success / info / warn / error,可逗号多值)、`since`(1h / 24h / 7d / 30d)、`q`(标题、错误、动作、对象 ID、审计负载,不区分大小写)、`objectType` + `objectId`(同一对象的任务、定时任务运行与审计一起列出)、`system=1`。
|
||||||
|
- **例行记录**缺省不列:没有业务对象的引擎运行、定时任务触发且成功的引擎运行、巡检 / 后台调查对应的引擎运行(在「定时与自动」里已有一条)、普通定时任务的成功 / 跳过运行。点「显示例行记录」或按对象筛选时列出。
|
||||||
|
- **分页**:游标 = (时间, 日志 id),各来源各取 limit+1 再合并,逐页与一次取全顺序一致。
|
||||||
|
- **实时**:页面默认连 `GET /logs/stream`(SSE,同一组筛选),服务端每 2 秒查一次最近 10 分钟,新日志和状态有变化的日志(任务从进行中变成完成)推给页面,按 id 覆盖。「暂停」断开连接,「继续」从已知最新一条续上,暂停期间的日志会补推。
|
||||||
|
- **详情**:点一行开抽屉。任务沿用原任务详情(业务摘要、时间线、引擎步骤、取消 / 重跑,`?run=<引擎运行 id>` 也能直接打开);其余显示字段、负载与「同一对象的全部日志」。`/console/tasks/:id` 独立页保留。
|
||||||
|
- **问智能体**:勾选一条或一段(按住 Shift)后点「问智能体」,打开智能体抽屉,目标里按时间正序列出这些日志(时间、类型、结果、摘要、日志 id、对象);单条时带上任务 / 下载任务 / 整理记录等上下文 id。超过 6000 字截断。
|
||||||
|
- 登录失败(用户名 / 密码 / 验证码错误)写一条 `admin.login_failed` 审计(用户名、IP、原因,不含密码);被限速拦下的尝试不写。
|
||||||
|
|
||||||
|
### 「定时任务」页签
|
||||||
|
|
||||||
|
原计划页(智能体巡检卡片 + 自动任务列表)放在日志页的第二个页签 `/console/logs?tab=schedules`(`?job=` 高亮)。定时任务是配置,但这一页的主要内容是运行状态(上次结果、下次运行、失败原因、立即执行 / 跳过),与它的运行日志放在一起;设置页按约定只放全局参数与凭证(`docs/design/console-ia.md` §3)。卡片的「运行记录」跳日志按该定时任务筛选。
|
||||||
|
|
||||||
|
## 运行状态 `/console/status`
|
||||||
|
|
||||||
|
在原有横幅、需要关注、数据库、任务引擎、定时任务、磁盘、挂载根、存储之外:
|
||||||
|
|
||||||
|
- **资源**(参考 MoviePilot 仪表盘):CPU、内存、网络、磁盘读写四块,当前值 + 小趋势(15 分钟 / 1 小时 / 6 小时)。api 进程每 5 秒读一次 `/proc` 与 cgroup v2,采样只放内存、保留 6 小时,进程重启后重新累计(`GET /system/resources?minutes=`)。
|
||||||
|
- CPU:有 cgroup `cpu.stat` 时按本容器用量 ÷ 可用核数(`cpu.max` 限额,否则在线核数);否则 `/proc/stat` 整机。另给整机 CPU 与 1 / 5 / 15 分钟负载。
|
||||||
|
- 内存:有 cgroup `memory.current` 时 = current − `memory.stat` 的 inactive_file(同 `docker stats`),上限 `memory.max`(不限时为整机总量);否则 `/proc/meminfo` 整机。
|
||||||
|
- 网络:`/proc/net/dev` 除 lo 外合计(容器里即本容器网卡)。磁盘读写:cgroup `io.stat`,否则 `/proc/diskstats` 整盘。
|
||||||
|
- 读不到的文件按 null 显示「—」,磁贴右上角写口径(本容器 / 整机 / 取不到)。
|
||||||
|
- **进程**表直接展示(不再折叠),每个角色进程(API / Worker(后台任务)/ Worker(智能体)/ 单进程)带 CPU(两次心跳之间占一个核的百分比,心跳 `extra.cpuPercent`)与内存(RSS)。事件循环与 SSE 的趋势仍在折叠区。
|
||||||
|
|
||||||
|
首页「运行状态」卡是简版:整体健康、CPU / 内存(最近 30 分钟小趋势)、用量最高的 3 个磁盘、下载器 / 站点账号 / 媒体库目录的正常数 / 总数,点进去到运行状态页。
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
# 定时任务与看板
|
# 定时任务与看板
|
||||||
|
|
||||||
所有周期任务都登记在 `scheduled_job` 表里,由 io worker 上唯一的调度器按表驱动。控制台「计划」页(`/console/schedules`,分「自动任务」与「Agent 巡检」两节)可以查看和调整。
|
所有周期任务都登记在 `scheduled_job` 表里,由 io worker 上唯一的调度器按表驱动。控制台日志页的「定时任务」页签(`/console/logs?tab=schedules`,原计划页 `/console/schedules` 跳转过来;分「自动任务」与「Agent 巡检」两节)可以查看和调整,运行记录在日志页按定时任务筛选(见 [logs.md](logs.md))。
|
||||||
|
|
||||||
## 组成
|
## 组成
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user