claude code command:通过日志 debug

前言

调试 Bug 时,你是不是也遇到过这些问题:

  • 日志打得到处都是,难以拼凑完整链路
  • 调试代码清理不干净,上线前被代码审查打回
  • 反复添加/删除日志,效率极低

最近我用 Claude Code 的自定义命令功能,开发了一套调试日志自动化工作流,通过两个命令搞定「添加 → 清理」全流程。

两个核心命令

log-debug-start:自动添加调试日志

触发命令

log-debug-start [问题描述]

执行流程

步骤操作
1分析问题描述,搜索相关代码
2识别数据流、事件链、函数调用等关键路径
3在关键位置插入 __debugLog 日志
4在流程末尾集中输出 DEBUG_LOG
5将修改的文件记录到 .claude/debug-state.json
6等待用户复制日志输出
7根据日志分析,提出修复方案

日志格式示例

const __debugLog = {};
__debugLog.init = 'ok';
__debugLog.dataLen = data?.length ?? 0;
__debugLog.userType = user?.type ?? 'unknown';
__debugLog.apiStatus = res?.status ?? 'error';
// ... 关键路径打点(5-8 条上限)
console.log('DEBUG_LOG', JSON.stringify(__debugLog));

log-debug-stop:自动清理调试代码

触发命令

log-debug-stop

执行流程

步骤操作
1读取 .claude/debug-state.json 获取修改的文件列表
2遍历文件,搜索所有 __debugLog 相关代码
3删除声明、赋值、输出的代码行
4删除状态文件
5确认清理完成

设计原则

极简 - 缩写 key + 短 value,单条日志控制在 2000 字符内

集中 - 最终只输出 DEBUG_LOG 一条,方便复制分析

克制 - 5-8 条上限,只在关键路径打点

可识别 - 所有调试代码包含 __debugLog 标记,方便搜索清理

实际对比

维度传统方式新方式
日志数量20+ 条分散 log1 条结构化日志
定位效率手动拼凑链路一眼看清状态流转
清理成本逐行删除,易遗漏一条命令自动清理
协作效率截图/复制多行单条日志直接分享

踩坑记录

问题:一开始没有状态文件记录,清理时漏了几个文件

解决:添加 .claude/debug-state.json 记录修改的文件列表,确保清理时不会遗漏

使用截图

1.提问

2.控制台找到日志

3.复制给cli

4.清楚日志

小结

这套工作流的核心价值:

  • 用最小的日志成本,获取最大的问题定位信息
  • 结构化日志,方便复制给同事/AI 协助分析
  • 自动化清理,不留技术债务

对于频繁调试的团队,建议把这两个命令固化到开发流程中。

源码地址

github.com/yc-lm/docum…


你们团队是怎么管理调试日志的?有没有类似的自动化工具?欢迎留言交流~

本站提供的所有下载资源均来自互联网,仅提供学习交流使用,版权归原作者所有。如需商业使用,请联系原作者获得授权。 如您发现有涉嫌侵权的内容,请联系我们 邮箱:alixiixcom@163.com