Apache/IIS的日志分析工具:AWStats(4)
数据源日志格式和按天的截断规则
对于Apache:日志格式好设置:设置成combined格式即可,日志截断麻烦一点:需要安装cronolog工具,将日志设置成按天截断:
CustomLog "|/usr/local/sbin/cronolog /path/to/apache/logs/access_log.%Y%m%d" combined
比如:logs/access_log.20030326
日志是压缩格式,可以使用gzip -d < /home/apache/logs/access_log.%YYYY-24%MM-24%DD-24.gz | 动态解压缩统计。
对于IIS:缺省有比较好的日志按天截断规则,但是IIS的日志格式比较不适合AWStats统计,
因此最好直接去掉所有日志字段,然后严格按照以下列表设置
日期 date
时间 time
客户IP地址 c-ip
用户名 cs-username
方法 cs-method
URI资源 cs-uri-stem
协议状态 sc-status
发送字节数 sc-bytes
协议版本 cs-version
用户代理 cs(User-Agent)
参照 cs(Referer)
相比IIS缺省设置:
减少的有:
服务器IP地址
服务器端口
URI查询
增加的有:
发送字节数
协议版本
参照
配置文件的命名规则:awstats.sitename.conf
AWStats的主程序awstats.pl会自动根据站点名调用相应站点的配置文件:awstats.sitename.conf
比如:运行./awstats.pl -config=chedong 调用的就是同目录下的 awstats.chedong.conf 配置文件;
如果没有指定-config,还会找当前目录下的awstats.conf或者/etc/awstats.conf作为缺省配置文件。
所以最好把缺省的awstats.model.conf 重命名成 awstats.yoursite.conf;比如:awstats.chedong.conf,
对于多个站点的统计,AWStats的配置文件包含功能还是非常有用的,我们可以把通用的配置放在一个文档中,然后用(5.4版本以后开始支持) Include配置将通用配置包含在各个具体配置文件的头部,然后用其他配置覆盖通用配置中的相应属性,比如:
Include="common.conf"
LogFile="/path/to/bbs/access_log"
SiteName="bbs.chedong.com"
最少的配置文件修改:LogFile SiteDomain LogFormat
对于在GNU/Linux上统计Apache日志只需修改:LogFile SiteDomain这2个选项
GNU/Linux LogFile="/path/to/apache/logs/access_log.%YYYY-24%MM-24%DD-24"
Windows 2000 LogFile="d:\iis_logs\W3SV3\ex%YY-24%MM-24%DD-24.log"
这个配置的意思是用24小时前的年份,月份,日期拼出的日志文件名;
SiteDomain="www.chedong.com"
站点的名称,缺省是空的,如果为空,AWStats将拒绝运行;
对于统计IIS日志需要多修改一个:
LogFormat=2
缺省值是1:Apache日志,2是IIS日志