log-analysis-structurize

star 0

将原始日志语句结构化为 9 列 CSV 表格。输入搜索阶段输出的原始日志列表,输出标准化日志表格(编号/出现场景/组件/日志级别/日志内容/出现阶段/含义/下一步走向/代码位置)。触发词:结构化日志、日志表格、整理日志表格。

xiaoshudian555 By xiaoshudian555 schedule Updated 5/18/2026

name: log-analysis-structurize description: 将原始日志语句结构化为 9 列 CSV 表格。输入搜索阶段输出的原始日志列表,输出标准化日志表格(编号/出现场景/组件/日志级别/日志内容/出现阶段/含义/下一步走向/代码位置)。触发词:结构化日志、日志表格、整理日志表格。

日志结构化器

将原始日志语句整理为 9 列标准化表格,为后续生成 Markdown 和故障模式库做准备。


触发词

结构化日志、日志表格、整理日志表格


输入

输入 必需 说明
原始日志列表 必需 log-analysis-search 的输出(Markdown 列表格式)
功能描述 必需 该日志属于哪个功能,如"缩P保D"、"PD建链"

输出

输出 格式 说明
日志表格 CSV 文件 9列:编号、出现场景、组件、日志级别、日志内容、出现阶段、含义、下一步走向、代码位置

9 列定义

列号 列名 说明 提取来源
1 编号 按执行顺序编排 人工判断
2 出现场景 什么触发条件导致这条日志 代码上下文(if 条件、调用链)
3 组件 产出该日志的模块 代码所在目录/类名/命名空间
4 日志级别 INFO / WARN / ERROR / DEBUG 日志宏本身
5 日志内容 格式字符串,保留占位符 日志语句原文
6 出现阶段 在整个流程的哪个阶段 根据功能流程判断
7 含义 这条日志传达什么信息 解读日志内容
8 下一步走向 日志打出后流程走向哪里 代码中该语句之后的逻辑
9 代码位置 文件名:行号 grep 结果

编号原则

  • 按实际执行顺序编排,不是按代码文件位置
  • 同一流程中先执行的排前面
  • 同一日志被多处调用但执行顺序相同,只保留一条
  • 不同执行路径产生的同一日志,按路径分别列条目(编号不同)

组件命名规范

直接写仓库级 + 子模块,粒度以子模块/子目录为界:

示例 是否正确 说明
llm/model 正确粒度
cmotor/router 正确粒度
pymotor/coordinator 正确粒度
vllm/scheduler 正确粒度
llm 太粗
pymotor/CoordinatorClass/handleRequest_inner 太细

出现阶段划分

根据功能流程划分阶段,常见阶段:

阶段 说明
初始化 服务启动、配置加载、资源申请
请求接入 接收推理请求、参数解析
路由分发 选择目标实例/节点
链路建立 建链、解链、重连
推理执行 prefill、decode、采样
异常处理 重试、熔断、降级
资源释放 释放显存、清理缓存
状态查询 心跳、监控

CSV 格式

编号,出现场景,组件,日志级别,日志内容,出现阶段,含义,下一步走向,代码位置
1,收到建链请求,llm/model,INFO,"[model] Received link request from {peer}",初始化,通知收到建链请求,进入建链处理逻辑,src/model/link_manager.cpp:45
2,建链成功,llm/model,INFO,"[model] Link established, group_id={group_id}",初始化,链路已成功建立,进入就绪状态,src/model/link_manager.cpp:128
3,建链失败,llm/model,ERROR,"[model] Link failed, error_code={code}, peer={peer}",异常处理,链路建立失败,触发重试或告警,src/model/link_manager.cpp:145
  • 日志内容用双引号包裹(因为内容可能含逗号)
  • 占位符保留原样
  • 代码位置只写相对路径(不含完整路径)

工作流程

第一步:确认功能流程

了解该功能从开始到结束的完整流程,划分阶段边界。

第二步:逐条填充表格

对每条原始日志,补充:

  1. 出现场景:什么条件会走到这条日志
  2. 组件:根据代码所在目录/类名确认组件
  3. 出现阶段:属于哪个阶段
  4. 含义:这条日志在说什么(简洁,不要复述日志内容)
  5. 下一步走向:打完这条日志后,代码接下来做什么

第三步:排序

按执行顺序给所有条目编号。

第四步:输出 CSV

保存为 CSV 文件,等待下一步校正(如有实际日志输入)。


注意事项

  • 占位符({id}%s%d 等)必须原样保留
  • 编号按执行顺序,不是按代码文件位置
  • 同一条日志在不同场景下出现时,按场景分别列条目(编号不同)
  • 代码位置格式:文件名:行号(不含完整路径)
  • 组件命名不要太粗也不要太细
Install via CLI
npx skills add https://github.com/xiaoshudian555/private-skills --skill log-analysis-structurize
Repository Details
star Stars 0
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator
xiaoshudian555
xiaoshudian555 Explore all skills →