先说结论:在调试微服务接口时——尤其是那些莫名其妙返回500或空响应的场景——直接给 CodeBuddy 加上 -d 参数,就能把底层的 HTTP 请求头、重试次数、重定向路径、真实响应体全部展示出来,无需在日志里反复 grep 瞎猜。

具体如何操作?先说最直接的方式。在终端里,直接加上 -d 参数即可:
codebuddy -d "分析这个 Feign 调用失败原因"这会启动交互会话,同时自动开启调试输出。所有网络请求、工具调用、模型推理步骤——原始上下文都会完整打印。核心提醒:必须使用 -d,仅用 --debug 是无效的。CodeBuddy 的调试日志开关严格绑定 -d,其他参数如 --verbose 只是配置覆盖项,不会触发底层协议级日志。
配合管道输入定位异常响应体
有两种常见场景可以借助管道输入来使用。
方法一:从 curl 日志提取原始响应
找一份报错时抓取到的 raw response,保存为 feign_error.raw。然后运行:
cat feign_error.raw | codebuddy -d -p "解析这个 HTTP 响应,指出状态码、headers 和 body 中的错误线索"CodeBuddy 就会对着这个原始响应帮你逐段分析。
方法二:实时捕获服务端输出
这个方法更加直接。本地启动服务后,用 curl -v 把输出抓取出来,然后一起通过管道输入给 CodeBuddy:
curl -v http://localhost:8080/api/beacon/123 2>&1 | codebuddy -d -p "提取 curl -v 输出里的完整请求行、所有 header 和响应 body"注意:-p 模式下必须显式加上 -d,否则 verbose 日志会被静默丢弃。
在交互会话中动态开启详细日志
如果你已经在交互会话中,不想退出重新开启,也有办法。直接启动交互模式:
codebuddy然后在会话中输入:
/debug on这会立刻激活当前会话的全量日志输出。接着提出你的问题即可,比如:为什么这个 Feign 接口返回 404?这时你会看到每一步工具调用的完整输入输出——读取 application.yml、扫描 @FeignClient 注解、检查 Nacos 实例列表,全部都有。如果觉得信息刷屏太多,关闭也很简单:输入 /debug off 即可。
