A-A+

日志分析-Awstats的扩展cronolog

2008年11月25日 编程开发 暂无评论 阅读 1 次

本文章在Centos5(RHEL5)的环境上测试正常.

日志做为日志分析工具的数据源,能保证按天轮循,同一天的日志中的数据都在同一天内。这样以后你无论使用什么工具(商业的,免费的)来分析日志,都不会 因为日志复杂的预处理机制受到影响。

1.安装

#rpm -Uhv http://apt.sw.be/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

先安装扩展包

然后安装

#yum install cronolog

注意:默认是cronolog的命令在/usr/sbin/cronolog下,这个要明白.

3.Linux下的配置

例:cronolog命令在/usr/sbin/cronolog下,日志文件在/var/log/httpd/下

在FormatLog附近加入两句:

CustomLog "|/usr/sbin/cronolog /var/log/httpd/access_%Y%m%d.log" combined

ErrorLog "|/usr/sbin/cronolog /var/log/httpd/error_%Y%m%d.log"
如果有虚拟主机,虚拟主机也要配置,例如:

<VirtualHost *:80>
ServerName www.domain.com
CustomLog "|/usr/sbin/cronolog /var/log/httpd/access_%Y%m%d.log" combined
ErrorLog "|/usr/sbin/cronolog var/log/httpd/error_%Y%m%d.log"
</VirtualHost>

4.重启服务

相信就可以看到生成了一个新的日志文件。如果还要用awstats分析的话,记的要修改awstats的配置文件中的日志部分部分即可。
指定日志文件位置跟cronolog生成的日志文件位置对应 LogFile="/var/log/httpds/access_%YYYY-24%MM-24%DD-24.log"

%YYYY-24 表示24小时之前的年份,%MM-24表示24小时之前的月份,%DD-24表示24小时之前的天,合起来%YYYY-24%MM-24%DD-24就表示24小时前的年月日。为什么要减去一个24呢,这 是因为我们在使用awstats分析apache日志的时候,必须分析已经生成的日志。而我们又常常使用cron来自动update,举个例子,当我们于 2007年5月1日凌晨1点分析我们网站的apahce日志的时候,我们是要分析前一天也就是2007年4月30日的日志,而不是cron运行的当天5月 1日的日志:)这样,减去一个数字,才能够正确得到我们想要分析的apche的日志的文件名。当然,你也可以不用24这个数字,可以根据自己的实际情况来 调整:)

 

给我留言

Copyright © 浩然东方 保留所有权利.   Theme  Ality 07032740

用户登录