根据项目的框架和部署架构,可选择不同的日志切割方案

  • 基于 pm2 部署的 Node.js 应用,可采用 pm2-logrotate 实现日志切割。
  • 基于 Egg.js 框架的 Node.js 应用,可采用 egg-logrotator 实现日志切割

日志切割频率

  1. 定时切割: 进程启动一个定时任务,到设定时间后切割日志文件。
  2. 按大小切割:进程定时监控日志文件的大小,若文件超出设定的最大值时进行切割。

copytruncate 模式

  1. copy 当前日志文件,重命名为新的日志文件,这样进程还是往老的日志文件写入。
  2. 对老的日志文件进行 truncate 清空,这样就完成了一次日志切割。

sign/create 通知模式

https://zhuanlan.zhihu.com/p/139176082/