![更改日志轮换周期](https://linux22.com/image/484009/%E6%9B%B4%E6%94%B9%E6%97%A5%E5%BF%97%E8%BD%AE%E6%8D%A2%E5%91%A8%E6%9C%9F.png)
在我的 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 目录的角落。