Guardian 管理后台 PRD
概述
Guardian 管理后台是 SayClaw Admin 中的安全与风控模块,提供全维度守护进程的可视化监控、异常事件追踪、修复记录查看和执行记录审计功能。
访问地址:https://admin.sayclaw.ai/web/scheduler
功能模块
Tab 1: 概览
今日统计卡片:显示今日异常事件总数、修复成功数、修复失败数、修复成功率。
维度健康状态表:展示 10 个检查维度的实时状态。
| 列 | 说明 |
|---|---|
| 维度 | 维度名称 |
| 状态 | 健康状态标签(正常/警告/异常) |
| 今日事件 | 今日产生的异常事件数 |
| 成功 | 今日修复成功数 |
| 失败 | 今日修复失败数 |
| 最后检查 | 最后一次检查时间 |
最新执行状态表:展示每个 Guardian 任务的最新一次执行结果。
| 列 | 说明 |
|---|---|
| 任务 | 任务名称 |
| 状态 | 执行状态标签 |
| 详情 | 执行结果摘要 |
| 执行时间 | 最后执行时间 |
Tab 2: 异常事件与修复记录
支持按维度、状态、目标ID筛选的异常事件列表。
| 列 | 说明 |
|---|---|
| 时间 | 事件发生时间 |
| 维度 | 检查维度名称 |
| 目标 | 检查目标(实例/服务器) |
| 问题描述 | 检测到的问题 |
| 处理措施 | 采取的修复操作 |
| 状态 | 修复结果(成功/失败) |
| 额外信息 | JSON 格式的详细数据 |
Tab 3: 执行记录
所有定时任务的执行历史,支持按任务名筛选。
| 列 | 说明 |
|---|---|
| 任务 | 任务名称 |
| 状态 | 执行状态 |
| 耗时 | 执行耗时 |
| 详情 | 执行结果摘要 |
| 执行时间 | 执行时间 |
Tab 4: 任务队列
显示当前注册的所有定时任务及其 cron 表达式。
审计日志页面
访问地址:https://admin.sayclaw.ai/web/audit-logs
LLM 请求日志
来自 OneAPI 的 LLM 请求记录,支持按实例ID、模型、状态、时间范围筛选。
| 列 | 说明 |
|---|---|
| 时间 | 请求时间 |
| 实例 | OC 实例ID |
| 模型 | 使用的 LLM 模型 |
| Token 入 | 输入 token 数 |
| Token 出 | 输出 token 数 |
| 费用 | 请求费用 |
| 延迟 | 响应延迟 |
| 状态 | 请求状态 |
操作日志
管理员操作审计记录,自动记录登录、实例创建/配置更新、Guardian 修复等关键操作。
| 列 | 说明 |
|---|---|
| 时间 | 操作时间 |
| 操作者 | 执行操作的用户 |
| 操作 | 操作类型 |
| 目标 | 操作目标 |
| 详情 | 操作详细信息 |
全局 Loading 优化
所有 API 请求期间,页面顶部显示 NaiveUI LoadingBar 进度条:
- 请求开始:显示 loading bar
- 请求成功:loading bar 完成
- 请求失败:loading bar 显示错误状态
测试用例
Guardian Stats API
# 获取所有维度统计
curl -s https://api.sayclaw.ai/api/v1/guardian/stats \
-H "Authorization: Bearer <token>" | python3 -m json.tool
# 预期:返回 {code: "0000", data: {today: {...}, dimensions: [...], job_runs: [...]}}
Guardian Events API
# 查询异常事件(按维度筛选)
curl -s "https://api.sayclaw.ai/api/v1/guardian/events?dimension=guardian_process_check&page=1&page_size=5" \
-H "Authorization: Bearer <token>" | python3 -m json.tool
# 预期:返回 {code: "0000", data: {total: N, page: 1, page_size: 5, list: [...]}}
审计日志 API
# 查询操作日志
curl -s "https://api.sayclaw.ai/api/v1/audit/logs?page=1&pageSize=10" \
-H "Authorization: Bearer <token>" | python3 -m json.tool
# 查询 LLM 请求日志
curl -s "https://api.sayclaw.ai/api/v1/audit/request-logs?page=1&pageSize=10" \
-H "Authorization: Bearer <token>" | python3 -m json.tool
前端页面测试
| 测试项 | 预期结果 | 状态 |
|---|---|---|
| Guardian 概览页加载 | 10个维度全部显示,状态标签颜色正确 | ✅ |
| 异常事件筛选 | 按维度/状态/目标ID筛选正常 | ✅ |
| 执行记录分页 | 分页加载正常,任务筛选正常 | ✅ |
| 审计日志-LLM请求 | 显示请求记录,支持模型/状态筛选 | ✅ |
| 审计日志-操作日志 | 显示登录/创建实例等操作记录 | ✅ |
| 全局 Loading Bar | API 请求时顶部显示进度条 | ✅ |
| 页面切换 | 路由切换无闪烁 | ✅ |