应用一直写日志,不轮转迟早把磁盘写满。logrotate 按天切割、压缩、留 N 份。

操作步骤

/var/log/myapp/*.log {
    daily
    rotate 14
    compress
    missingok
    notifempty
    create 0640 myapp myapp
    postrotate
        systemctl kill -s USR1 myapp
    endscript
}

要点速览

  • daily + rotate 14 表示每天一份、留两周,超出自动删。
  • compress 把旧日志 gzip,省空间。
  • postrotate 通知应用重开日志文件,否则它还会写已被改名旧文件。
日志不轮转,等于给磁盘装了个无声漏勺。