温馨提示×

Debian如何调试Nodejs代码

小樊
58
2026-07-01 19:43:56
栏目: 编程语言

Debian 上调试 Node.js 代码,常见且实用的方法主要有以下几种,从最基础企业级一步步来:


一、最基础:使用 console.log(快速定位)

适合简单问题、临时调试。

console.log('变量值:', variable);
console.log('函数执行到这里');

运行:

node app.js

✅ 优点:简单
❌ 缺点:不直观、不能断点


二、Node.js 内置调试器(命令行断点)

Node.js 自带调试功能,不依赖 IDE。

1️⃣ 启动调试模式

node inspect app.js

或旧版本:

node --inspect app.js

输出示例:

Debugger listening on ws://127.0.0.1:9229/

2️⃣ 在代码中加断点

debugger;

3️⃣ 使用 Chrome 调试

  1. 打开 Chrome
  2. 访问:
chrome://inspect
  1. 点击 Inspect 对应 target

✅ 图形化断点
✅ 查看变量、调用栈
✅ 企业常用


三、使用 VS Code 调试(强烈推荐)

最推荐方式,适合 Debian + Node.js 开发。

1️⃣ 安装 VS Code

sudo apt update
sudo apt install code

2️⃣ 创建调试配置

  1. 打开项目
  2. Ctrl + Shift + D
  3. 点击「create a launch.json」
  4. 选择 Node.js

生成配置示例:

{
  "version": "0.2.0",
  "configurations": [
    {
      "type": "node",
      "request": "launch",
      "name": "Launch Program",
      "program": "${workspaceFolder}/app.js"
    }
  ]
}

3️⃣ 设置断点并调试

  • 点击行号左侧
  • F5 启动调试

✅ 可视化
✅ 支持断点、变量、Watch
✅ 与生产环境一致


四、调试运行中 Node 进程(线上常用)

适合 已经启动的服务

1️⃣ 启动时开启调试端口

node --inspect=9229 app.js

2️⃣ 使用 Chrome 连接

打开:

chrome://inspect/#devices

✅ 不中断服务
✅ 可用于 Docker / 服务器


五、调试崩溃 / 异常(core dump)

适合项目突然退出

1️⃣ 开启崩溃日志

node --abort-on-uncaught-exception app.js

2️⃣ 查看错误堆栈

node app.js 2>&1 | tee error.log

六、常用调试工具对比

方式 适合场景 推荐指数
console.log 快速定位 ⭐⭐
node inspect 命令行 ⭐⭐⭐
Chrome DevTools 断点调试 ⭐⭐⭐⭐
VS Code 日常开发 ⭐⭐⭐⭐⭐
PM2 + inspect 线上服务 ⭐⭐⭐⭐

七、示例:一个完整调试流程

// app.js
function add(a, b) {
  debugger;
  return a + b;
}

console.log(add(1, 2));

启动:

node --inspect app.js

Chrome 连接后单步调试 ✅


八、Debian 常见问题

1️⃣ Node 版本太旧

node -v

建议使用 Node 18+

curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt install -y nodejs

2️⃣ 防火墙阻拦 9229 端口

sudo ufw allow 9229

总结(推荐路径)

日常开发:VS Code
线上调试--inspect + Chrome
快速定位console.log

如果你愿意,可以告诉我:

  • ✅ 是 本地调试 还是 服务器调试
  • ✅ 用的是 Express / NestJS / 原生 Node
  • ✅ 是否在 Docker / PM2 / systemd 中运行

我可以给你更精确的调试方案

0