启用可观测性
可观测性分两部分:server wiring 和 operator review。本指南聚焦 server 暴露 runtime stats、trace、audit、eval stores 后,operator 在 UI 中应该看到什么、点击什么。
- 打开 Dashboard。
- 在 Health 和 System 中检查 audit log、runtime stats、trace、eval 是否可用。
- 打开 Agents,查看 inference count、latency 和 error signals。
- 打开已保存 Agent;trace routes 启用后,使用 Recent runs。
- 把重要 trace 保存为 dataset fixture。
- 运行 eval,在接受行为变更前查看 report。
每个界面告诉你什么
Section titled “每个界面告诉你什么”| 界面 | 用途 |
|---|---|
| Dashboard | Health、workload、recent audit activity 和 subsystem availability。 |
| Agents list | 接入 stats 后展示每个 Agent 的 inference count、errors、latency。 |
| Recent runs / traces | 单次 run 的 tool calls、model output、prompt variants 和 final status。 |
| Datasets | 把 trace 整理成可重复 fixtures。 |
| Eval Runs | Live 或 scripted replay 结果。 |
| Eval Reports | 离线 NDJSON report review 和 baseline comparison。 |
评测你观察到的行为
Section titled “评测你观察到的行为”当 dashboard 或 trace 观察引出了调优动作,就用 eval 验证。循环是:observe → tune 一个字段 → validate → preview → save → rerun 同一个 fixture。
Server wiring 检查表
Section titled “Server wiring 检查表”如果界面提示某个 subsystem unavailable,说明 UI 正常:server 还没有暴露对应 store 或 route。
| UI 中缺失 | Server 侧检查 |
|---|---|
| History 空或 Audit Log disabled | Audit log store/wiring |
Agent stats 显示 n/a | Runtime stats registry/store |
| 没有 recent runs 或 trace drawer | Trace capture/store routes |
| Dataset/eval 页面 disabled | Eval dataset 和 run stores |
| 没有外部 telemetry spans | OTel exporter 和 collector configuration |
开发接线参考
Section titled “开发接线参考”构建自定义 observability backend 时,把上面的 UI 流程和提供数据的代码面对应起来:
MetricsSink接收 runtime metrics;一个 run 需要写入多个目的地时使用CompositeSink或BatchingSink。TraceStore支撑 recent runs、trace drawer 和 dataset fixture curation。RuntimeStatsRegistry提供每个 Agent 的 counts、latency 和 error signals。SamplingPolicy控制哪些 spans 会进入持久化存储。
代码参考:crates/awaken-ext-observability/src/sink.rs、
crates/awaken-ext-observability/src/trace_store/、
crates/awaken-ext-observability/tests/observability_integration.rs 和
crates/awaken-ext-observability/tests/wiring_integration.rs。