我想压缩超过30天的日志,并通过logrotate删除超过90天的日志。你能帮我解决一下我需要在logrotate配置文件中配置的方法。
日志已根据时间创建。我需要从此路径中仅备份subversion日志。
[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天。这个过程每天都会运行。
答案 0 :(得分:0)
您可以尝试在logrotate.conf
中定义类似的内容/opt/svn/logs/svnarapp01/subversion_*.log {
monthly
compress
maxage 90
}
这将压缩超过30天的日志文件,并删除超过90天的日志。 您可以在logrotate手册页中找到更多参数。
答案 1 :(得分:0)
maxage
不会应用于.gz
文件,因为它们不是.log
文件。
您可以尝试如下定义postrotate
脚本:
postrotate
find /path/to/log/ -name "*.log.*.gz" -mtime +7 -delete
endscript
请根据您的要求调整路径和mtime。