用logrotate旋转不同名字的日志

日志名称附加时间戳生成时像log-20140526-062503.txt有没有办法来pipe理呢? 我试图用自定义状态文件,但日志旋转不会删除旧文件。

/var/logs/*.txt { rotate 15 daily compress missingok nocreate } 

任何帮助?

问题是, logrotate会考虑每个具有这个自定义名称的新日志文件作为一个单独的实体来旋转(就像access_logerror_log将单独处理,如果文件模式将是/var/log/httpd/*log )。 因此,你永远不会得到15个项目旋转。

解决这个问题的一个方法是使用maxage选项:

最大计数

删除比date更早的旋转日志。 只有在日志文件将被旋转的情况下才会检查年龄。 如果configuration了maillast和邮件,则将文件邮寄到configuration的地址。

但我不确定这是否真的有效。

如果这不起作用,我只是build议使用一个cron作业,删除超过15天的文件匹配通配符,因为它看起来应用程序已经每天都在使用一个新的日志文件。