精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>● FreeBSD>>网络应用>>服务器>>Apache>>我也来说说apache的log

主题:我也来说说apache的log
发信人: rawrence()
整理人: zhcharles(2002-01-30 15:56:15), 站内信件
 我也在维护一些比较大访问量的网站,也遇到过关于apache logs的问题 
当然,newsyslog也是个很好的方法!
   但我喜欢用这个 “cronolog”,apache自带的那个玩意实在是很烂,如果你的网站的访问量很大(一天的日志超过100M)肯定会死的很难看,我试过的。 
用了这个cronolog就很爽,你们看看我的httpd.conf中对log的配置就知道了 

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined 
LogFormat "%h %l %u %t \"%r\" %>s %b" common 
LogFormat "%{Referer}i -> %U" referer 
LogFormat "%{User-agent}i" agent 
ErrorLog        "|/usr/local/bin/cronolog /data/logs/%Y/%m/%d/error.log" 
CustomLog       "|/usr/local/bin/cronolog /data/logs/%Y/%m/%d/access.log" common  
CustomLog       "|/usr/local/bin/cronolog --symlink=/data/logs/access.log /data/logs/%Y/%m/access.log" combined  

是不是很爽! 
它把apache的log按你指定的时间格式作为目录,把log放在目录里面, 
我又写了个程序,用webalizer每天去分析一下当天的日志,结果生成html.分析完了,日志可以压缩备份,也可以删除.实在是爽。 
cronolog的主站在http://www.ford-mason.co.uk/resources/cronolog/ 

哦 对了,还有个小技巧,就是把你不像记录到日志中去的文件类型过滤的方法。   前段时间维护主机,妈的,有个人提了个比较变态的想法(不知道那个人会不会看到,呵呵),说:“不要把扩展名是 .css .js的文件记录到apache的log里面”,考,于是我去查了查apache的 manual 发现是可以做到的。写在下面: 
SetEnvIf Request_URI \.(css|js)$ true 
CustomLog       "|/usr/local/bin/cronolog /data/logs/%Y/%m/%d/access.log" common env=!true 
其实,是个正则表达式,简单得很。 
不过apache真的很博大精深啊!希望这点小小的心得对大家有帮助,




----
阿鲁的阿,阿鲁的鲁

[关闭][返回]