压缩并删除日志旋转中的日志



我想通过 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 手册页中找到更多参数。

最新更新