解决Node.js在Ubuntu上日志输出过多的问题,可从以下方面入手:
error或warn),减少非必要日志输出。// 使用winston设置日志级别
const logger = winston.createLogger({
level: process.env.NODE_ENV === 'production' ? 'warn' : 'debug'
});
logrotate工具按天/大小分割日志并压缩旧文件,避免单个文件过大。# 创建logrotate配置文件(/etc/logrotate.d/nodejs)
/var/log/nodejs/*.log {
daily
rotate 7
compress
missingok
create 0640 root adm
}
sudo logrotate -f /etc/logrotate.d/nodejs # 手动触发轮转
winston),避免阻塞主线程。cron定时任务或find命令定期删除过期日志。# 清理7天前的日志
sudo find /var/log/nodejs -name "*.log" -mtime +7 -exec rm {} \;
以上方法可组合使用,优先通过日志库和轮转控制日志量,定期清理确保磁盘空间充足。