pm2日志位置在 /root/.pm2/logs 中,它默认只有两个文件文件,一个错误记录,一个正常记录;随着时间的拉长,文件会慢慢变大,不方便阅读也不方便部分删除。
此时可以使用pm2-logrotate对pm2日志进行优化处理。
PM2 模块,用于自动轮换由 PM2 管理的进程日志。
安装
pm2 install pm2-logrotate
配置
max_size
(默认值为):当文件大小大于此值时,它将旋转它(可能是工作人员在实际通过限制后检查文件)。您可以在以下位置指定单位:10M
10G
10M
10K
retain
(文件日志的默认值):此数字是一次保留的轮换日志数,这意味着如果保留 = 7,则最多有 7 个轮换日志和当前日志。30
compress
(默认值为):通过 gzip 为所有旋转的日志启用压缩false
dateFormat
(默认值为):使用的数据格式名称为日志文件YYYY-MM-DD_HH-mm-ss
rotateModule
(默认为):像其他应用程序一样旋转pm2模块的日志true
workerInterval
(默认值为秒):您可以控制工作线程检查日志大小的时间间隔(最小值为30
1
)rotateInterval
(默认为每天午夜):此 cron 在执行时用于强制旋转。我们使用节点调度来调度 cron,因此节点调度的所有有效 cron 对于此选项都是有效的 cron。克隆样式 :0 0 * * *
* * * * * *
┬ ┬ ┬ ┬ ┬ ┬
│ │ │ │ │ |
│ │ │ │ │ └ day of week (0 - 7) (0 or 7 is Sun)
│ │ │ │ └───── month (1 - 12)
│ │ │ └────────── day of month (1 - 31)
│ │ └─────────────── hour (0 - 23)
│ └──────────────────── minute (0 - 59)
└───────────────────────── second (0 - 59, OPTIONAL)
TZ
(系统时间的默认值):这是用于偏移保存的日志文件的标准 tz 数据库时区。例如,具有每小时日志的值将以小时 GMT 保存文件,日志名称中包含小时 (GMT+1)。Etc/GMT+1
14
13
如何设置这些值?
安装模块后,您必须键入:pm2 set pm2-logrotate:<param> <value>
例如:
pm2 set pm2-logrotate:max_size 1K
(1KB)pm2 set pm2-logrotate:compress true
(旋转时压缩日志)pm2 set pm2-logrotate:rotateInterval '*/1 * * * *'
(力每分钟旋转一次)