远程调试
所谓远程调试,是指在本地 IDE 或命令行即时调试服务端代码,这在预发环境的测试阶段可以使用。远程调试避免了服务端环境的模拟,可快速定位 bug。
node 应用调试
本文的教程主要针对采用 VS Code IDE 的群体。目前并未搭建一个系统专门支持 node 应用远程调试,因此需要开发人员手动去对应服务端机器运行相关操作:
- 通过需要 debug 的服务端机器
- 关闭当前所有工作进程 慎重,确保机器是你需要 debug 的机器
- 切换至应用的工作目录, 执行
node --inspect=127.0.0.1:9090 index
,IP 地址替换为对应机器的 IP - 配置 VS Code 的“.launch.json”文件,在 configurations 数组中加入一个配置对象
"configurations": [
{
"type": "node",
"request": "attach",
"name": "vsssssss",
"address": "127.0.0.1",
"port": 9090,
"localRoot": "${workspaceFolder}",
"remoteRoot": "/home/www/abc/deploy/abc" // 工作目录
}
]
配置对象的 type、request、localRoot 字段固定不变;name 为应用名可随意取;address、port 为需要 debug 的服务 IP 和端口,remoteRoot 为服务端代码的绝对路径。
- 在 VS Code 中的 debug tab 栏选择第 4 部中对应 name 字段名称的应用,启动即可,此后在本地代码中打的所有断点都会生效。
此文档针对 node 8+ 版本
参考
node_debugger