我想通过 logrotate 压缩超过 30 天的日志并删除超过 90 天的日志。你能在这里帮助我如何在日志旋转会议文件中配置吗?
日志已根据时间创建。我只需要从此路径备份子版本日志。
[svnadmin@svnarapp01:/opt/svn/logs/svnarapp01]ls subversion_201*
subversion_2014_12_14_00_00_00.log
subversion_2014_12_29_00_00_00.log
subversion_2015_01_13_00_00_00.log
subversion_2014_12_15_00_00_00.log
subversion_2014_12_30_00_00_00.log
subversion_2015_01_14_00_00_00.log
subversion_2014_12_16_00_00_00.log
subversion_2014_12_31_00_00_00.log
subversion_2015_01_15_00_00_00.log
超过 30 天的日志将压缩,并删除超过 90 天的日志。此过程将每天运行。
maxage
不会应用于.gz
文件,因为它们不是.log
文件。您可以尝试按如下方式定义postrotate
脚本:
postrotate
find /path/to/log/ -name "*.log.*.gz" -mtime +7 -delete
endscript
请根据您的要求调整路径和时间。
你可以尝试在logrotate.conf中定义这样的东西
。/opt/svn/logs/svnarapp01/subversion_*.log {
monthly
compress
maxage 90
}
这将压缩超过 30 天的日志文件并删除超过 90 天的日志。 您可以在 logrotate 手册页中找到更多参数。