开发者:生产环境 Bug 排查
场景背景
周五下午 4 点,你收到告警:线上系统的"用户订单"接口在过去 30 分钟内错误率飙升到 15%,部分用户看到"服务器错误"无法查看自己的订单。客服已经接到投诉。
你需要快速:定位问题 -> 确认根因 -> 修复 -> 上线 -> 加防护。传统做法是翻日志、grep 关键字、一个文件一个文件地看代码,可能要折腾一两个小时。你决定用 Claude Code 来加速整个排查过程。
你将学到: 如何用 Claude Code 分析错误日志、在代码中定位 bug、制定修复方案、验证修复、添加防护措施——在线上事故的时间压力下高效工作。
前置准备
- 已安装 Claude Code,熟悉基本操作
- 有线上系统的代码仓库(本案例以 Node.js + Express 项目为例)
- 能访问错误日志(日志文件、或者从监控系统复制)
- 了解基本的 Git 操作和后端开发
第一步:收集错误信息
先把错误日志收集到本地。进入项目目录:
cd ~/projects/order-service
claude
把从监控系统或日志平台复制的错误信息告诉 Claude:
> 线上"用户订单"接口出问题了,错误率 15%。以下是从日志中提取的典型错误:
[ERROR] 2024-03-15T16:02:33Z - GET /api/orders?userId=8827
TypeError: Cannot read properties of undefined (reading 'map')
at formatOrderItems (src/services/order.service.ts:142)
at getOrdersByUserId (src/services/order.service.ts:87)
at OrderController.getUserOrders (src/controllers/order.controller.ts:34)
[ERROR] 2024-03-15T16:03:11Z - GET /api/orders?userId=12453
TypeError: Cannot read properties of undefined (reading 'map')
at formatOrderItems (src/services/order.service.ts:142)
at getOrdersByUserId (src/services/order.service.ts:87)
这个错误从 16:00 左右开始出现,在此之前一切正常。
今天下午 15:45 有一个部署,版本号 v2.3.1。
请帮我分析这个错误,找到根因。