更改日志轮换周期

更改日志轮换周期

在我的 Linux/Apache 服务器上,access_log 日志会轮换,以便保留过去 5 天的日志(access_log.1、access_log.2 等)

我该如何更改此方案以保留超过 5 天?

答案1

实际使用的日志轮换程序可能因发行版而异。在 Debian 上(可能在其他 Linux 上也是如此),命名方案和保留期均在 /etc/logrotate.conf 和 /etc/logrotate.d/apache2 中定义

摆弄这些文件应该可以解决你的问题。

答案2

请注意,根据您的所在地和工作地点,轮换(删除)日志是一种严重的违法行为。为了符合 PCI/HIPAA 规定(及其他规定),您需要将日志存储至少 6 个月/1 年。

我的建议是完全禁用轮换(通常通过从 /etc/logrotate.d 中删除文件)并将它们转发到中心位置......

*我真的很讨厌 Linux 系统默认将日志视为不太重要的行为。

答案3

默认情况下,您的系统将使用 logrotate,它将重命名日志。对于某些系统日志来说,这可能是一个好策略,但我不认为这是 www 日志的最佳选择。对于 Apache 来说,一个好的选择是使用不同的记录器:纪年法将旋转您的日志并更改其名称,并可配置为执行几乎所有您可以做的事情。

有很多关于如何使用和配置 cronolog 的文章,其中许多会指导您修改 Apache 配置文件(通常在 /etc/httpd/ 中)以获得更好的网络日志。

答案4

$ man logrotate

并查看 /etc/logrotate.d 目录的角落。

相关内容