以下是通过日志监控Debian上Node.js状态的方法:
基础日志输出
在代码中使用console.log
/console.error
输出日志,通过重定向到文件监控:
node app.js > logs/output.log 2>&1
。
使用日志库
const winston = require('winston');
const logger = winston.createLogger({
level: 'info',
transports: [
new winston.transports.File({ filename: 'error.log', level: 'error' }),
new winston.transports.File({ filename: 'combined.log' })
]
});
进程管理工具
pm2 start app.js --name "my-app"
,pm2 logs
查看日志。系统日志集成
配置Node.js将日志发送至系统日志服务(如syslog),需在代码中指定传输方式。
高级监控方案
日志轮转
使用logrotate
工具定期压缩/删除旧日志,避免文件过大:
# 示例配置(/etc/logrotate.d/nodejs):
/path/to/logs/*.log {
daily
rotate 7
compress
missingok
notifempty
}
根据需求选择方案,生产环境推荐PM2+日志库+日志轮转组合。