监控与日志
观察服务健康、任务队列、运行指标、用量和审计事件
运维监控分为基础设施状态、产品运行状态和安全审计三层。
服务与队列
持续检查 frontend、api、worker、sandbox-worker、beat、PostgreSQL、Redis 和 Qdrant。重点关注 API 5xx、数据库连接、Redis 队列积压、知识库处理失败、Sandbox 超时/磁盘上限和 Beat 是否重复运行。
队列按职责分开,排查积压时要先确认是哪一条:
| 队列 | 消费服务 | 积压时的表现 |
|---|---|---|
default | worker | 通知延迟、用量重置滞后、审计归档堆积 |
agent | worker | 后台 AgentRun 长时间停留在运行中 |
knowledge | worker | 文档长时间停留在处理中 |
workflow | worker | 工作流运行排队 |
sandbox | sandbox-worker | 代码执行与 Agent 代码工具排队 |
docker compose ps
docker compose logs -f api worker sandbox-worker beat frontendKubernetes 使用 kubectl get pods、kubectl logs -f deployment/api 等命令查看。
数据库健康
PostgreSQL 是统计、检索词法通道和审计的共同依赖,除连接状态外还要看:
pg_stat_statements(镜像已预载并设置track=all)中最耗时的语句,用于发现缺失索引的查询。- 无效索引:
CONCURRENTLY构建失败会留下INVALID索引,IF NOT EXISTS不会重建它。 - 仪表盘与统计接口的响应时间:变慢且 CPU 不高通常意味着走了顺序扫描而非覆盖索引。
SELECT query, calls, mean_exec_time, total_exec_time
FROM pg_stat_statements
ORDER BY total_exec_time DESC
LIMIT 20;
SELECT c.relname
FROM pg_class c
JOIN pg_index i ON i.indexrelid = c.oid
WHERE NOT i.indisvalid;索引创建、清理与验证步骤见数据库维护与索引调优。
观测控制台
产品内置的可观测性控制台位于监控 > 可观测性(路由 /dashboard/observability),数据由 GET /api/v1/admin/observability/* 提供,需要 admin:dashboard:access 权限。控制台没有 Prometheus 风格的 /metrics 端点,也没有内建 Prometheus/Grafana/Datadog/ELK 集成;外部监控只能采集日志并轮询健康端点与这组观测接口。
接口分成两类,参数语义不同:
| 端点 | 参数 | 说明 |
|---|---|---|
/overview、/agents、/agent/{agent_id}、/workflows、/workflow/{workflow_id}、/throughput、/tokens | time_range | 用量统计,可选 7d/30d/90d/all,默认 30d;非法值回退 30d |
/timeouts | time_range + source(all/agent/workflow)+ page/page_size | 超时事件分页列表 |
/agents、/workflows、/timeouts | page(≥1)、page_size(1–100,默认 20)、sort_by、sort_order | 分页与排序 |
/throughput | granularity(hour/day) | 默认 7d 用 hour,其余用 day |
/system/health、/system/trend、/system/workers | 无 | 当前快照,不接受 time_range |
/system/slow-queries | threshold_ms(默认 1000,≥1)、page(≥1)、page_size(1–100,默认 20) | 读取 pg_stat_statements |
/system/workers 返回 Celery 侧队列与 Worker 状态:status、worker_count、active_tasks、reserved_tasks、scheduled_tasks,以及五条队列(default、knowledge、workflow、agent、sandbox)各自的 pending 长度和按任务名的待处理明细。/system/health 返回 CPU、内存、磁盘、数据库、Redis 与这份 Worker 快照,并把结果写入 Redis 快照列表供 /system/trend 读取。所有观测载荷缓存 30 秒。
/system/slow-queries 依赖 pg_stat_statements 扩展。返回 available: false 时看 reason 字段:未加载 shared_preload_libraries、数据库用户权限不足,或扩展未创建。官方 PostgreSQL 镜像已预载并设置 track=all。
基础健康检查 GET /api/v1/health 无需认证,供容器健康检查与外部探活使用;它只返回 {"status": "healthy"},不含依赖详情。
产品指标
工作台仪表盘和 Agent/工作流监控页提供对话数、消息数、Token、响应时间、工具调用、工作流运行数、成功率、失败数和平均耗时。按团队和资源权限过滤,不同用户看到的数据范围可能不同。

审计与告警
审计日志记录操作者、资源、动作、时间和变更前后快照。通知系统可为文档处理失败、工作流失败、Agent 发布、配额接近/超限、异常登录和账户锁定发送站内或外部通知。
日志安全
日志中可能包含 URL、模型错误、用户输入摘要、工具参数和资源 ID。生产环境禁止无保护地公开日志端点,并按组织策略脱敏、保留和归档。
这篇文章对你有帮助吗?