运行统计¶
Console 的“运行统计”以调用事件而不是访问日志为数据源,分开记录一次调用方请求和它产生的每次接入点尝试。故障转移时,一个请求会对应多条尝试。
请求与尝试¶
| 记录 | 回答的问题 | 主要字段 |
|---|---|---|
| Request | 调用方最终得到什么结果? | 模型组、协议、模式、入口位置、HTTP 状态、总耗时、流终止原因 |
| Attempt | 每个上游候选发生了什么? | 接入点、上游模型、tier、weight、状态码、重试原因、Driver、Usage、成本 |
Sidecar reference 请求还会产生内部转发记录。Console 默认用 origin request 统计调用方请求,避免把内部转发重复计算为业务流量。
页面视图¶
“运行统计”支持文本/图片类型切换,以及最近 15 分钟、1 小时、6 小时、24 小时、7 天、30 天或自定义时间范围。当前视图包括:
- 接入点:按接入点汇总调用、延迟、吞吐、成本与可用率;
- 价格:展示各上游模型配置的 input、output、cache 单价;
- 性能:首事件、首输出、总延迟、Token/s 与 I/O;
- 可用率:成功和可用尝试占比;
- 调用记录:按结果筛选并展开请求与尝试明细。
结果与流状态¶
请求和尝试使用稳定 Outcome 分类,例如 success、client_error、auth_error、routing_error、capacity_error、upstream_error、timeout、canceled 和 internal_error。
流式调用还区分:
completed:协议终止完整;failed_before_commit:下游响应提交前失败;partial_failure:已经提交部分输出后失败;client_cancelled:调用方取消;timeout/idle_timeout:总时长或帧间隔超时;downstream_write_failed:向调用方写入失败。
HTTP 2xx 不足以证明流完整,排障时应同时查看 Outcome、stream status 和 response committed。
Usage 与成本¶
Usage 状态为:
final:上游或 Driver 给出了完整最终用量;partial:只获得部分计数;unavailable:没有可信用量。
来源显示为 upstream_reported 或 driver_accumulated。成本只对已知 Token 数和已配置价格计算;未知尝试单独计数,不会混入已知成本。
遥测完整度¶
Central 直接记录自己的事件;Sidecar 先写入有界队列,再分批上传到 Central。Console 会根据各 telemetry source 的 session、coverage watermark、队列、in-flight batch 和 dropped counter 判断当前时间窗口是否完整。
看到“遥测数据不完整”时,当前聚合可能少计。应检查 Sidecar 实例详情中的最后上报时间、覆盖水位、队列深度、最老排队事件和累计丢失事件,而不是把图表中的零直接解释为没有流量。