首页 > 代码库 > 怎么解决apache日志文件太大的问题

怎么解决apache日志文件太大的问题

原文地址:http://un173.blog.51cto.com/8263566/1598346

管理apache服务器有些年头,虽然最近几年被nginx抢了不少风头,但我依然钟爱apache。

喜欢它强劲的并发处理能力,以及forker与worker模式间自由选择的快感,哈哈。

 熟悉linux下apache运维的朋友,多少都会遇到过apache日志文件太大的问题,网站刚上线时不会在意到这个问题,因为流量小,自然error.log与access.log文件内容也就少,文件容量不大,因此,配置时也不会考虑apache日志维护的什么策略啥的。

 当网站流量上涨到一定程度时,单个的error.log或access.log将无法应对日益增长的日志文件,以及日志分析的需求了。

 思路就是要对文件限制大小,然后进行回滚,也就是常说的apache日志分割与轮循了。

 

如何正确解决这个问题呢,网上现成的文章很多,这里整理几篇,留作备忘。

  • 1、正确解决apache日志文件太大问题

  • 2、解决apache日志文件太大问题(按天分割apache日志)

  • 3、apache error.log日志文件太大怎么办?

  • 4、apache access.log日志文件太大怎么办

  • 5、apache日志文件太大怎么用日志滚动解决?

  • 6、apache日志文件太大怎么做日志轮循?

笔者参考以上资料,完成了apache日志分件的回滚操作,每个日志文件限定为指定的大小,然后按天生成日志文件,观察了一段时间,效果不错。

 

下面附上我的apache日志回滚的配置内容:

默认配置:

1
2
CustomLog "logs/access.log" common
ErrorLog "logs/error.log"

 

修改后的配置:

1
2
3
CustomLog "|bin/rotatelogs /var/logs/logfile 86400" common
CustomLog "|bin/rotatelogs /var/logs/logfile 5M" common
ErrorLog "|bin/rotatelogs /var/logs/errorlog.%Y-%m-%d-%H_%M_%S 5M"

 

例2:

1
2
3
4
5
6
7
8
# 限制错误日志文件为 1M
ErrorLog “|bin/rotatelogs.exe -l logs/error-%Y-%m-%d.log 1M”
# 每天生成一个错误日志文件
#ErrorLog “|bin/rotatelogs.exe -l logs/error-%Y-%m-%d.log 86400″
# 限制访问日志文件为 1M
CustomLog “|bin/rotatelogs.exe -l logs/access-%Y-%m-%d.log 1M” common
# 每天生成一个访问日志文件
#CustomLog “|bin/rotatelogs.exe -l logs/access-%Y-%m-%d.log 86400″ common


如果你也遇到了apache日志文件增长太快,日志文件太大的问题,不妨一试。

方法很简单,效果很明显。

怎么解决apache日志文件太大的问题