logrotate
logrotate简单使用
配置文件
1 # vim /etc/logrotate.d/mysql-audit
1 /var/lib/mysql/mysql-audit.json { 2 daily # 转储周期,daily,weekly,monthly 3 # size=50M # 按照文件大小轮转 4 missingok # 在日志轮循期间,任何错误将被忽略,例如“文件无法找到”之类的错误 5 copytruncate # 用于还在打开中的日志文件,把当前日志备份并截断,若无此参数,轮转后日志不会继续记录 6 rotate 5 # 保留5个备份,0代表不备份 7 compress # 通过gzip 压缩转储以后的日志 8 delaycompress # 总是与compress选项一起用,delaycompress选项指示logrotate不要将最近的归档压缩,压缩将在下一次轮循周期进行。这在你或任何软件仍然需要读取最新归档时很有用 9 notifempty # 若为空文件则不转储 10 dateext # 备份文件添加日期 11 # create # 转储文件后创建新文件,保留文件属性 12 # prerotate # 轮转前执行的脚本 13 # ... 14 # endscript 15 # postrotate #在转储后执行的脚本 16 # ... 17 # endscript 18 }
上面的模板是通用的,而配置参数则根据你的需求进行调整,不是所有的参数都是必要的。
演练
1 # logrotate -d /etc/logrotate.d/mysql-audit
强制执行
1 # logrotate -vf /etc/logrotate.d/mysql-audit