在Ubuntu系统中,Node.js应用程序的日志轮转可以通过logrotate工具来实现。以下是配置日志轮转的步骤:
确保logrotate已安装:
在大多数Ubuntu版本中,logrotate已经预装。如果没有,可以使用以下命令安装:
sudo apt-get update
sudo apt-get install logrotate
创建一个logrotate配置文件:
在/etc/logrotate.d/目录下创建一个新的配置文件,例如nodejs:
sudo nano /etc/logrotate.d/nodejs
编辑配置文件:
在打开的文件中,添加以下内容并保存。请根据实际情况替换/path/to/your/nodejs/app/logs/为你的Node.js应用程序日志文件的路径。
/path/to/your/nodejs/app/logs/*.log {
daily
rotate 7
compress
missingok
notifempty
create 0640 root adm
}
配置说明:
daily: 每天轮转日志。rotate 7: 保留7个轮转后的日志文件。compress: 轮转后的日志文件进行压缩。missingok: 如果日志文件不存在,不会产生错误。notifempty: 如果日志文件为空,不进行轮转。create 0640 root adm: 创建新的日志文件,权限为0640,属主为root,属组为adm。测试配置:
使用以下命令测试logrotate配置是否正确:
sudo logrotate -f /etc/logrotate.d/nodejs
如果没有错误信息,说明配置正确。
自动执行日志轮转:
logrotate会自动按照配置文件中的设置执行日志轮转。你可以通过查看/var/lib/logrotate/status文件来查看日志轮转的状态。
现在,你的Node.js应用程序的日志轮转已经配置好了。每天,logrotate会自动轮转日志文件,并保留7个轮转后的压缩日志文件。