使用 logrotate 仅删除由其他服务管理/轮换的日志

使用 logrotate 仅删除由其他服务管理/轮换的日志

市面上有许多程序可以自行管理日志文件轮换。然而,其中许多程序只轮换日志,从不删除它们,并认为这只是系统管理员工作的一部分,他/她会根据需要备份或删除。

我的问题是,我可以使用 Logrotate 仅删除旧日志文件吗?例如

/some/log/path/*{
maxage 90
}

我意识到这可以通过 Cron 和其他方式轻松实现,但我的问题是关于使用 Logrotate。这样做有什么缺点吗?

谢谢!

答案1

手册页说:

最大计数

删除超过<count>几天的轮换日志。仅当日志文件需要轮换时才会检查年龄。如果配置了 maillast 和 mail,文件将邮寄到配置的地址。

(重点添加。)按照这个,除非logrotate负责旋转日志,否则maxage将被忽略。

我考虑过也许配置 logrotate 来执行实际上不执行任何操作的旋转操作,但我在配置选项中没有看到任何可以轻松实现这一点的东西。

相关内容