Linux 下 Node.js 调试实用指南
一 内置检查器与 Chrome DevTools
二 使用 Visual Studio Code 调试
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/your_script.js",
"skipFiles": ["<node_internals>/**"]
}
]
}
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "attach",
"name": "Attach to Process",
"port": 9229
}
]
}
三 命令行与代码级辅助手段
const debug = require('debug')('myapp');
debug('current user: %o', user);
四 远程与应急调试
五 进阶 源码级 GDB 调试 Node.js
git clone https://github.com/nodejs/node.git
cd node
./configure --debug && make -j$(nproc)
sudo mkdir -p /opt/swap
sudo dd if=/dev/zero of=/opt/swap/swap bs=1M count=10240
sudo mkswap /opt/swap/swap
sudo swapon /opt/swap/swap
gdb --args ./node_g src/node_main.cc
(gdb) b main
(gdb) r