在Debian系统上,可以使用pm2
或logrotate
来实现Node.js应用程序的日志轮转。下面是两种方法的详细步骤:
安装pm2:
npm install pm2 -g
启动你的Node.js应用程序:
pm2 start app.js --name my-app
配置日志轮转: pm2内置了日志轮转功能,可以通过以下命令配置:
pm2 set pm2-logrotate:max_size 10M
pm2 set pm2-logrotate:retain 7
这将设置每个日志文件的最大大小为10MB,并保留最近7天的日志文件。
查看日志轮转状态:
pm2 logs my-app
创建logrotate配置文件:
在/etc/logrotate.d/
目录下创建一个新的配置文件,例如my-node-app
:
sudo nano /etc/logrotate.d/my-node-app
添加以下内容到配置文件:
/path/to/your/node/app/logs/*.log {
daily
rotate 7
compress
delaycompress
missingok
notifempty
create 0640 root adm
}
解释:
daily
:每天轮转一次日志。rotate 7
:保留最近7天的日志文件。compress
:压缩旧的日志文件。delaycompress
:延迟压缩,直到下一次轮转。missingok
:如果日志文件不存在,不会报错。notifempty
:如果日志文件为空,不进行轮转。create 0640 root adm
:创建新的日志文件,权限为0640,属主为root,属组为adm。测试logrotate配置:
sudo logrotate -f /etc/logrotate.d/my-node-app
查看日志文件: 确保日志文件已经按照配置进行了轮转。
通过以上两种方法,你可以在Debian系统上实现Node.js应用程序的日志轮转。选择哪种方法取决于你的具体需求和偏好。