在Ubuntu系统中,可以使用pm2
或logrotate
工具来配置Node.js应用程序的日志轮转。下面是使用这两种方法的详细步骤:
方法一:使用pm2
-
安装pm2: 如果你还没有安装pm2,可以使用以下命令进行安装:
sudo npm install pm2 -g
-
启动你的Node.js应用: 使用pm2启动你的Node.js应用,并指定日志文件路径:
pm2 start app.js --name my-app --log /path/to/your/logs/my-app.log
-
配置日志轮转: pm2提供了内置的日志轮转功能。你可以使用以下命令来配置日志轮转:
pm2 set pm2-logrotate:max_size 10M pm2 set pm2-logrotate:retain 7
这里的
max_size
参数指定了单个日志文件的最大大小(例如10MB),retain
参数指定了保留的日志文件数量。 -
查看日志轮转配置: 你可以使用以下命令查看当前的日志轮转配置:
pm2 show
| grep logrotate
方法二:使用logrotate
-
创建logrotate配置文件: 在
/etc/logrotate.d/
目录下创建一个新的配置文件,例如my-app
:sudo nano /etc/logrotate.d/my-app
-
添加配置内容: 在配置文件中添加以下内容:
/path/to/your/logs/my-app.log { daily rotate 7 compress delaycompress missingok notifempty create 640 root adm }
解释:
daily
:每天轮转一次日志。rotate 7
:保留7个轮转后的日志文件。compress
:压缩轮转后的日志文件。delaycompress
:延迟压缩,直到下一次轮转。missingok
:如果日志文件不存在,不会报错。notifempty
:如果日志文件为空,不进行轮转。create 640 root adm
:创建新的日志文件,权限为640,属主为root,属组为adm。
-
测试logrotate配置: 你可以使用以下命令测试logrotate配置是否正确:
sudo logrotate -f /etc/logrotate.d/my-app
通过以上两种方法,你可以在Ubuntu系统中配置Node.js应用程序的日志轮转。选择适合你需求的方法进行配置即可。