在 Ubuntu 上监控 Node.js 日志,常见做法可以按日志来源和监控方式来分。下面给你一套实用方案,从简单到专业。
tail -f /path/to/node.log
pm2 logs
pm2 logs appname
journalctl -u yourapp.service -f
npm install -g pm2
pm2 start app.js --name myapp
pm2 logs myapp
~/.pm2/logs/
pm2 install pm2-logrotate
[Unit]
Description=Node App
[Service]
ExecStart=/usr/bin/node /var/www/app/app.js
Restart=always
User=www-data
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=node-app
[Install]
WantedBy=multi-user.target
journalctl -u node-app -f
/etc/logrotate.d/node-app
防止日志爆盘。
适合多台服务器。
process.on('uncaughtException', (err) => {
console.error('Error:', err);
});
process.on('unhandledRejection', (reason) => {
console.error('Unhandled:', reason);
});
✅ 小项目
PM2 + pm2 logs
✅ 生产服务器
systemd + journalctl + logrotate
✅ 多服务 / 微服务
PM2 + Loki + Grafana
如果你愿意,可以告诉我:
我可以直接给你可复制的配置。