在 Linux 上排查 Node.js 报错日志,一般可以从下面几个方向入手:
如果你是在终端直接运行:
node app.js
报错会直接打印在终端。
如果是:
node app.js > app.log 2>&1 &
或
nohup node app.js > app.log 2>&1 &
查看日志:
tail -f app.log
如果你用 PM2 管理 Node.js:
pm2 logs
查看某个应用:
pm2 logs appname
查看错误日志:
pm2 logs appname --err
日志文件位置:
~/.pm2/logs/
如果是 systemd 服务:
journalctl -u your-node-service -f
/var/log/syslog
/var/log/messages
确保代码里有:
process.on('uncaughtException', (err) => {
console.error(err);
});
process.on('unhandledRejection', (reason) => {
console.error(reason);
});
# 查看 node 进程
ps aux | grep node
# 查看端口占用
lsof -i:3000
# 查看内存/CPU
top / htop
如果你愿意,可以把:
发出来,我可以直接帮你定位问题。