在 Ubuntu 上 Node.js 日志突然变多(日志量大、频繁输出),通常不是单一原因,而是下面几类常见情况。我按「最常见 → 较少见」给你梳理,并附排查方法。
console.log / console.error 在:
debug / silly✅ 排查:
grep -R "console.log" your_project/
看是否在生产环境也打了 debug 日志。
✅ 现象:
✅ 排查:
journalctl -u your-node-service | tail -n 100
或看 Nginx access log。
✅ 典型日志:
ECONNREFUSED
ETIMEDOUT
UnhandledPromiseRejection
✅ 排查:
journalctl -u node | grep -i error | tail -n 50
✅ 表现:
/var/log/syslog 或 journalctl 很大✅ 优化:
# systemd service
StandardOutput=append:/var/log/node/app.log
StandardError=append:/var/log/node/error.log
✅ 检查:
ls -lh /var/log/
logrotate -d /etc/logrotate.conf
~/.pm2/logs✅ 建议:
✅ 排查:
node --trace-gc app.js
✅ 解决:
# 1. 看服务日志最近在打什么
journalctl -u your-node-service -n 200
# 2. 看错误
journalctl -u your-node-service | grep -i error
# 3. 看文件大小
du -sh /var/log/*
# 4. 看进程输出
pm2 logs # 如果用 pm2
如果你愿意,可以贴:
我可以直接帮你判断是 代码问题、配置问题,还是被攻击。