Skip to content

refactor(logging): clarify startup and bound runtime diagnostics - #1638

Open
sufubao wants to merge 12 commits into
ModelTC:mainfrom
sufubao:log-cleanup
Open

sufubao wants to merge 12 commits into
ModelTC:mainfrom
sufubao:log-cleanup

Conversation

@sufubao

@sufubao sufubao commented Oct 17, 2026 •

Copy link
Copy Markdown
Collaborator

当前日志混杂启动进度、请求细节和逐页传输信息,TP/P-D 部署还会重复输出,难以判断服务是否真正就绪及运行时资源使用情况。本次统一日志配置和事件格式,使 INFO 展示清晰的启动阶段与节点级运行摘要,DEBUG 提供有边界、可关联的诊断信息。

  • 默认使用紧凑时间和组件/角色前缀,支持 JSON、模块级别覆盖及按进程轮转文件;HTTP access 默认关闭,HAProxy 遵循同一开关并过滤 readiness 探测。
  • 通过已绑定的 /readiness 确认真正就绪,TLS 部署使用 HTTPS 并信任配置中的服务证书,P/D 节点未注册时只输出一次等待提示,并记录启动总耗时。
  • 每个节点汇总运行、等待、暂停请求数,prefill/output token/s、完成请求/s,以及活跃 KV、可复用缓存占用和容量。TP leader 累加 CPU 共享计数,避免重复统计与新增 GPU 同步;稳定空闲只输出一次。
  • 成功请求摘要默认按 ID 稳定采样 1%,P/D 内部处理摘要降为 DEBUG;失败不采样,保留实际终止原因、取消和容量续跑状态。字符串 stop 按 choice 保留成功状态,后端 abort 清理不再影响请求摘要和完成计数。
  • DEBUG 使用有界结构化事件与请求关联字段,KV 传输按窗口汇总;修正业务来源行号、批次 ID 和退出日志,避免逐 token/逐页增长及 TP 公共状态重复。
  • 补充中英文配置文档和回归测试,保留上游统一结构化采样、停止条件及分段提前关闭时的指标收尾行为。

验证:

  • 最新 upstream/main 基线上相关回归 680 项通过,覆盖日志、引擎计数、P/D 分段与停止、请求生命周期及结构化输出;3 项 GPU 专用单测未纳入本轮 CPU 测试。
  • 所有修改的 Python 文件通过仓库固定版本 Black 21.12b0、Flake8,补丁通过 git diff --check。
  • NVIDIA H200 / Qwen3.5-0.8B:变基后的功能提交完成 TP2、P1D1 NCCL 普通、流式、并发及 3072-token 长请求实测,验证实时吞吐、KV 占用、就绪顺序与 TP 去重。该轮普通推理显式设置 --output_constraint_mode none;XGrammar 0.2.8 / TVM FFI 0.1.11 在隔离依赖中完成 CPU 回归。
  • DEBUG 体积实测:输出从 16 增至 256 token,TP2 均为 9 行(约 1 KB),P/D 均为 27 行(约 3.4 KB)。

本轮修复验证:启动、引擎吞吐、字符串 stop 和 HAProxy 回归 311 项通过,另有日志相关回归 130 项通过。覆盖实际 stop 匹配与后端 abort 收尾、多 choice 取消、真实 TLS 握手,以及 HAProxy 2.8.25 的 access 开关与 readiness 过滤。Black 21.12b0、Flake8 6.1.0 和 diff 检查通过;本轮未重新运行 GPU 推理测试。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant