Node.js在Linux上的调试技巧
Node.js在Linux上的调试技巧
1. 使用Node.js内置调试器
Node.js自v6.3.0版本起内置基于Chrome DevTools的调试器,通过--inspect
(正常启动并开启调试)或--inspect-brk
(启动时在第一行暂停)标志激活。例如:
node --inspect your_script.js # 正常启动调试
node --inspect-brk your_script.js # 第一行暂停
启动后,Node.js会在localhost:9229
开启调试端口。打开Chrome浏览器,访问chrome://inspect
,点击“Inspect”按钮即可连接,随后可设置断点、查看变量、单步执行(F10/F11)等。
2. 利用Visual Studio Code(VSCode)调试
VSCode是Linux下调试Node.js的高效工具,无需额外安装插件(内置支持)。步骤如下:
- 打开项目文件夹,在左侧边栏点击“Run and Debug”图标(虫子+三角形);
- 点击“create a launch.json file”,选择“Node.js”模板,生成配置文件;
- 修改
launch.json
,指定入口文件(如"program": "${ workspaceFolder} /app.js"
),并添加"skipFiles": ["< node_internals> /**"]
以忽略Node.js内部文件; - 按
F5
启动调试,程序会在断点处暂停,支持变量查看、调用栈分析等功能。
3. 结合Chrome DevTools调试
Chrome DevTools提供图形化界面,适合复杂调试场景。启动Node.js时添加--inspect
标志,然后在Chrome中访问chrome://inspect
,找到对应的“Remote Target”(如“your_script.js”),点击“Inspect”即可打开DevTools。在DevTools中,可通过“Sources”面板设置断点、查看变量值、执行代码片段(Console),甚至调试异步代码。
4. 使用console.log()与debugger语句
对于简单调试,console.log()
是最直接的方式,可打印变量值、执行流程(如console.log('Reached step 1:', variable)
)。若需精准暂停,可使用debugger;
语句(需配合node inspect
命令):
node inspect your_script.js # 启动调试模式
当执行到debugger;
语句时,程序会自动暂停,此时可通过Chrome DevTools或VSCode继续调试(如查看变量、单步执行)。
5. 第三方调试库:debug
debug
库是轻量级调试工具,适合模块化项目。安装:
npm install debug --save
在代码中引入并使用:
const debug = require('debug')('your_script');
// 'your_script'为命名空间
debug('Debug message: %s', variable);
// 输出格式化信息(如“your_script Debug message: value”)
通过环境变量控制调试输出(如DEBUG=your_script node your_script.js
),避免无关信息干扰。
6. 其他调试工具
- ndb:基于Chromium DevTools的增强型调试器,支持更丰富的功能(如内存分析、性能监测),可通过
npm install -g ndb
安装,使用ndb your_script.js
启动。 - node-inspector:传统调试工具,需全局安装(
npm install -g node-inspector
),启动后监听8080端口,通过node --debug your_script.js
启动程序,再访问http://localhost:8080/debug?port=9229
进行调试(适合旧版本Node.js)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Node.js在Linux上的调试技巧
本文地址: https://pptw.com/jishu/715753.html