一、webalizer
在linux下使用webalizer与awstats实现apache服务器的日志分析
原创
©著作权归作者所有:来自51CTO博客作者运维小成的原创作品,请联系作者获取转载授权,否则将追究法律责任
1)webalizer
webalizer是一个高效的、免费的web服务器日志分析程序。其分析结果以HTML文件格式保存,从而可以很方便的通过web服务器进行浏览。Internet上的很多站点都使用webalizer进行web服务器日志分析
2)webalizer特性
a. 为是用C写的程序,所以其具有很高的运行效率。在主频为200Mhz的机器上,webalizer每秒钟可以分析10000条记录,所以分析一个40M大小的日志文件只需要15秒。
b. webalizer支持标准的一般日志文件格式(Common Logfile Format);除此之外,也支持几种组合日志格式(Combined Logfile Format)的变种,从而可以统计客户情况以及客户操作系统类型。并且现在webalizer已经可以支持wu-ftpd xferlog日志格式以及squid日志文件格式了。
c. 支持命令行配置以及配置文件。
d. 可以支持多种语言,也可以自己进行本地化工作。
e. 支持多种平台,比如UNIX、linux、NT, OS/2 和 MacOS等。
3)webalizer安装
首先从webalizer的官网(http://www.webalizer.org/)下载最新版的源码包
解压缩webalizer包
切换至/usr/local/src/webalizer-2.03-05目录下
执行./configure –sysconfdir=/etc 指定webalizer的配置文件在/etc目录下
接着依次执行make与make install命令
最后会生成一个样例文件
通过访问/var/log/httpd/access_log这个日志文件,将webalizer的分析结果输出到/var/www/html/log(此log目录如果没有的话,需要手工创建)
那么可以编写webalizer的控制脚本为
由于要周期性执行webalizer的控制脚本(执行一次,产生一次分析结果),故将其加入计划任务
在/etc/cron.web目录下执行一次./web
查看一下/var/www/html/log目录下形成的文件
使用浏览器访问www.ifeng.com/log,查看形成的日志分析报告
二、awstats
1) awstats
awstats 是一个免费的强大而有个性的工具,带来先进的网络,流量,FTP或邮件服务器统计图. 本日志分析器作为CGI或从命令行在数个图形网页中显示你日志中包含的所有可能信息. 它利用一部分档案资料就能经常很快地处理大量日志档案, 它能分析日志文件来自从各大服务器工具 ,如 Apache日志档案 s (NCSA combined/XLF/ELF log format or common/CLF log format), WebStar, IIS (W3C的日志格式)及许多其他网站,Proxy(代理服务器)、Wap、流量服务器、邮件服务器和一些 FTP服务器 .
2) awstats功能
awstats是一个免费非常简洁而且强大有个性的网站日志分析工具。它可以统计您站点的如下信息:
a:访问量,访问次数,页面浏览量,点击数,数据流量等
b:精确到每月、每日、每小时的数据
c:访问者国家
d:访问者IP
e:Robots/Spiders的统计
f:访客持续时间
g:对不同Files type 的统计信息
h:Pages-URL的统计
i:访客操作系统浏览器等信息
j:其它信息(搜索关键字等等)
3) awstats特性
awstats是在Sourceforge上发展很快的一个基于Perl的WEB日志分析工具。相对于另外一个非常优秀的开放源代码的日志分析工具webalizer,awstats的优势在于:
a、界面友好:可以根据浏览器直接调用相应语言界面(有简体中文版)
b、基于Perl:并且很好的解决了跨平台问题,系统本身可以运行在GNU/Linux上或Windows上(安装了ActivePerl后);分析的日志直接支持Apache格式 (combined)和IIS格式(需要修改)。webalizer虽然也有Windows平台版,但目前已经缺乏 维护;awstats完全可以实现用一套系统完成对自身站点不同WEB服务器:GNU/Linux/Apache和Windows/IIS服务器的统一统计。
c、效率比较高:awstats输出统计项目比webalizer丰富了很多,速度仍可以达到webalizer的1/3左右,对于一个日访问量 百万级的站点,这个速度都是足够的;
d、配置/定制方便:系统提供了足够灵活但缺省也很合理的配置规则,需要修改的缺省配置不超过3,4项就可以开始运行,而且修改和扩展的插件还是 比较多的;
e、awstats的设计者是面向精确的"Human visits"设计的,因此很多搜索引擎的机器人访问都被过滤掉了,因此有可能比其他日志统计工具统计的数字要低,来自公司内部的访问也可以通过IP过滤 设置过滤掉。
f、提供了很多扩展的参数统计功能:使用ExtraXXXX系列配置生成针对具体应用的参数分析会对产品分析非常有用。
3) awstats安装
首先从awstats的官网(http://sourceforge.net/projects/awstats/)下载最新版的源码包
由于awstats是一个基于Perl的WEB日志分析工具,所以要使用awstats首先要确定系统已经安装过perl
解压缩awstats包
切换至/usr/local/awstats/tools目录下执行
会进入一个交互式的配置程序,过程中会有些问题要你回答,当然这些都是可以在以后的配置文件中修改的
检测到了我当前的操作系统
由于未检测到我当前的apache服务器的配置文件,因此需要手动的指定一下
向apache的配置文件里面增加了上述内容,里面是一些目录和别名的设置.这部分一般加到了文件的最后面
更新了模板文件
是否需要创建一个新配置文件,选y
这个地方填网站的域名
生成的配置文件存放的路径,默认是/etc/awstats,我不修改,直接回车
可以看到文件已经创建了,路径为/etc/awstats/awstats.www.ifeng.com.conf
由于修改了httpd.conf,所以它会自动重启apache来使配置文件生效
由于要得到新信息,就必须更新数据库,也就是说重新做读取日志.分析日志提取里面新增的部分进行分析,将更新的数据存入数据库的过程,最好就让它定时执行.这段话是提醒你,要实现这个功能就需要手动把上面带下划线的两行中的任一行写入crontab(计划任务),让它定时执行.其中第一句是更新www.ifeng.com,而第二句是在有多个站点情况下,将所有的站点都作更新.我在此不做这个操作,回车
按回车来结束安装.这段话就写的很清楚,接下来的工作就是
检查配置文件
这段脚本执行完,我们的httpd.conf也更新了,下面是它主要改动的部分
访问网站www.ifeng.com正常显示,这次访问就应该被记录到了日志里面.
通过http://localhost/awstats/awstats.pl?config=www.ifeng.com来查看统计的信息
很明显是权限问题,到/usr/local/awstats下执行chmod -R 755 wwwroot
检查并编辑配置文件awstats.www.ifeng.com.conf
# LogFile="/var/log/httpd/mylog.log"
LogFile="/usr/local/apache2/logs/access_log"
指到apache的日志
LogType=W
表示分析的是web日志
LogFormat=1
表示日志格式为combined
SiteDomain=" www.ifeng.com"
域名
HostAliases=" ifeng.com www.ifeng.com 127.0.0.1 localhost"
这个变量的意思是这个域的别名.即多个域名对应同一网站的情况,这句是自动生成的.我这里没有用到所以就没有改
切换至/usr/local/awstats/wwwroot/cgi-bin目录下
执行perl awstats.pl -update -config=www.ifeng.com来更新数据库
得到错误提示
很明显错误原因是/var/lib/awstats这个目录不存在
这里需要说明,这个路径是由配置文件/etc/awstats/awstats.www.ifeng.com.conf里面的DirData参数决定的,表示存放数据库的地方.我没有修改所以依然是默认值DirData="/var/lib/awstats"既然提示不存在,现在就来新建它
切换至/var/lib目录下执行
再次切换至/usr/local/awstats/wwwroot/cgi-bin目录下
重新执行perl awstats.pl -update -config=www.ifeng.com来更新数据库
得到以下信息
查看日志的内容的日志分析
下一篇:×××LAMP
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
apache 日志分析工具(webalizer、awstats)的使用
linux下webalizer与awstat两个日志分析工具安装及使用方法
webalizer日志分析工具 awstats日志分析工具 日志分析工具的安装及使用