温馨提示×

怎样开启debian nodejs调试日志

小樊
38
2026-10-04 05:42:19
栏目: 编程语言

在 Debian 上开启 Node.js 调试日志,取决于你想调试的“层次”不同,方法也不一样。下面按常见场景给你说明。


一、开启 Node.js 自身的调试日志(V8 / libuv / 模块等)

1️⃣ 使用 NODE_DEBUG

Node.js 内置了一些模块级别的调试日志:

NODE_DEBUG=http,net,tls node app.js

常用模块名:

  • http
  • net
  • tls
  • cluster
  • module
  • timer
  • fs

示例:

NODE_DEBUG=* node app.js

(会输出所有支持的调试信息,日志量很大)


2️⃣ 开启 V8 / GC 调试日志

node --trace-gc app.js
node --trace-gc-verbose app.js

查看更底层的 V8 日志:

node --log --prof app.js

生成 v8.log,可用:

node --prof-process v8.log

二、开启 Node.js 应用调试(代码级)

3️⃣ 使用 console.debug / console.log

console.debug('debug info');

设置日志级别(Node 14+):

NODE_DEBUG=* node app.js

4️⃣ 使用 --inspect(Chrome DevTools)

node --inspect app.js

远程调试:

node --inspect=0.0.0.0:9229 app.js

然后用 Chrome 打开:

chrome://inspect

三、调试 npm 相关日志(Debian 常见)

5️⃣ npm 调试日志

npm config set loglevel verbose
npm install

或临时:

npm install --loglevel silly

日志位置:

~/.npm/_logs/

四、系统 / 服务层面(systemd)

6️⃣ 如果用 systemd 启动 Node 服务

编辑 service 文件:

sudo systemctl edit your-node.service

加入:

[Service]
Environment=NODE_DEBUG=http,net

然后:

sudo systemctl daemon-reload
sudo systemctl restart your-node.service

查看日志:

journalctl -u your-node.service -f

五、推荐组合(实用)

NODE_DEBUG=http,net node --trace-warnings app.js

如果你能说明:

  • 是 Node 应用报错
  • 还是 npm 安装问题
  • 还是 服务启动失败

我可以给你更精确的开启方式。

0 踩