您的位置:首页 > 运维架构 > Apache

ubutun 下webalizer 分析Apache日志

2015-08-03 02:38 711 查看
http://www.webalizer.org/ 配置Webalizer我们可以通过命令行配置Webalizer,也可以通过配置文件进行配置。下面将重点介绍使用配置文件进行配置,该方法使用形式比较直观,使用比较普遍。Webalizer的配置文件的路径是"/etc/webalizer/webalizer.conf.sample。在一般情况下,该配置文件的默认参数配置都能满足一定的应用需要,可以直接使用。接下来以实例的方式给大家介绍如何配置该文件。使用vi编辑Webalizer配置文件。
webalizer/webalizer.conf

设置访问日志的存放路径。将系统默认值:
改为如下内容:

设置报表输出目录。
从默认值:
使用crontab命令让Webalizer每天生成Apache的当日流量统计分析。
添加如下配置行,使得Webalizer每晚9点生成当天的Squid流量统计分析结果。

21 0 * * * /usr/bin/webalizer -c /etc/webalizer/webalizer.conf

查看页面如下:

网络流量日志分析对于网络管理员来说非常重要。通过系统记载的流量日志,管理员可以清楚地看到用户对网络服务器的使用情况,能够从中挖掘及发现网络中可能存在的安全问题。在Linux下有许多日志及流量分析软件。Webalizer就是其中一个高效、简单易用、免费的Web服务器日志及流量 分析程序。Internet上的很多站点都使用它进行Web服务器日志及流量分析。本文将以对Linux下的代理服务器Squid的流量日志作分析为背 景,详细介绍如何使用该软件进行流量分析。Webalizer具有以下一些特性:● 用C语言编写,具有很高的运行效率。在主频为200Mhz的机器上,Webalizer每秒钟可以分析10000条记录,所以分析一个40M大小的日志文件只需15秒。●支持标准的一般日志文件格式(Common Logfile Format); 除此之外,也支持几种组合日志格式(Combined Logfile Format)的变种,从而可以统计客户情况以及客户操作系统类型。并且现在Webalizer已经可以支持wu-ftpd xferlog日志格式以及Squid日志文件格式了。安装配置Webalizer1. 源代码包的安装从Webalizer的站点http://www.mrunix.net/webalizer/download.html下载Webalizer,当前的最新版本是Webalizer-2.01-10-src.tgz。按照如下步骤进行安装://解压开源代码包#tar xvzf Webalizer-2.01-10-src.tgz//然后进入生成的目录#./configure#make --with-language=chinese//编译成功后,会产生一个Webalizer可执行文件,可以将其拷贝到/usr/sbin/目录下#cp Webalizer /usr/sbin/这样,安装就成功了,就可以对其进行配置了。2. RPM包的安装Red Hat Linux 9中提供了Webalizer的RPM安装包,下面介绍安装该RPM包的步骤:#rpm -qa | grep webalizer //查看是否已经安装了Webalizer#mount /mnt/cdrom //将第一张安装光盘放入光驱后挂装光盘分区#cd /mnt/cdrom/Red Hat/RPMS//进入/mnt/cdrom/Red Hat/RPMS目录#rpm -ivh webalizer-2.01_10-11.i386.rpm//执行安装用户可以通过命令行配置Webalizer,也可以通过配置文件进行配置,下面将介绍使用配置文件进行配置,该方法使用形式比较直观,较为普遍。Webalizer的配置文件的路径为: /etc/webalizer.conf,其有一个对应的例子文件/etc/webalizer.conf.sample。在一般情况下,该配置文件的默 认选项都能满足一定应用需要,可以直接使用。下面给出配置该文件的实际例子和步骤:1.使用vi编辑webalizer配置文件#vi /etc/webalizer.squid.conf2.设置访问日志的存放路径,将系统默认值:LogFile /var/log/httpd/access_log改为如下内容:LogFile /var/log/squid/access.log3.设置访问日志的格式类型,将LogType clf修改为:LogType squid4.将报表输出目录从默认值OutputDir /var/www/html/usages设为Squid的统计报表,保存目录。使用crontab命令让webalizer每天生成Squid的当日流量统计分析。#crontab -e5.添加如下配置行,使得webalizer每晚9点生成当天的Squid流量统计分析结果:21 0 * * * /usr/bin/webalizer -c /etc/webalizer.confSquid日志管理介绍Squid是Linux下一个缓存Internet数据的代理服务器软件,其接收用户的下载申请,并自动处理所下载的数据。在网络环境下,本地网络管理员经常可以通过其来代理访问互联网的很多资源,因而对其进行日志审核和管理具有重大意义。Squid日志管理的功能比较强大。通过查看相关日志文件,用户可以实时、准确地了解代理服务器的访问记录、cache的存储状况、cache的访问记录等许多有用的信息,从而高效地对代理服务器进行管理。Squid最重要的日志文件就是访问日志,其访问路径为: /var/log/squid/access.log。该日志文件记录了客户使用代理服务器的许多有用信息,包括使用时间、请求的内容、客户端信息等等。该文件的格式如下所示:time eclapsed remotehost code/status bytes method URL rfc931 peerstatus/ peerhost type如上可以看到,该日志文件的记录共包含10个字段,每个字段的含义如下:● time: 记录客户访问代理服务器的时间,从1970年1月1日到访问时所经历的秒数,精确到毫秒。● eclapsed: 记录处理缓存所花费的时间,以毫秒计数。● remotehost: 记录访问客户端的IP地址或者是域名。● code/status: 结果信息编码/状态信息编码,如TCP_MISS/205。● bytes: 缓存字节数。● method: HTTP请求方法,GET或者POST。● URL: 访问的目的地址的URL,如www.sina.com.cn。● Rfc931: 默认的,暂未使用。● peerstatus/peerhost: 缓存级别/目的IP,如DIRECT/211.163.21.19。● type: 缓存对象类型,如text/html。下面给出了实际应用中的一段真实的访问日志,只取出了其中的一部分:#cd /var/log/squid#cat access.log1119263842.955 195 192.168.10.3 TCP_MISS/200 1286 GET http://ad4.sina.com. cn/sina/ae/ad_src/popup/pops1.html? - DIRECT/218.30.108.19 text/html1119263843.241 286 192.168.10.3 TCP_MISS/200 44689 GET http://ad4.sina.com. cn/200506/15/21135_300x250.GIF - DIRECT/218.30.108.18 image/gif以第一条日志记录为例,其各个字段的含义如下:客户访问代理服务器的时间为1119263842.955毫秒。处理缓存所花费的时间为195毫秒。客户端的IP地址为 192.168.10.3,为内网地址。结果信息编码/状态信息编码为TCP_MISS/200。缓存字节数为1286。HTTP请求方法为GET。访问 的目的地址的URL为: http://ad4.sina.com.cn/sina/ae/ad_src/popup/pops1.html。缓存级别/目的IP为: DIRECT/218.30.108.19。缓存对象类型为text/html。rfc913暂未使用,用“-”表示。在上述的10个字段当中,信息编码以及状态信息编码比较重要,其表明了代理服务器对于客户请求的信息的返回结果,与代理服务器的cache命中率以及cahce处理过程有直接关系,该信息能够实在地反映代理服务器的cache的整体性能,具有较大的参考价值。查看Squid网络流量日志Webalizer可以将上述大量的Squid日志信息综合起来进行统计,得出可视化的显示结果供网络管理员或者网络用户进行参考和评价Squid服务器的使用情况,对于作出相应的决策有相当的参考价值。在使用过程中需要注意: 由于该软件的使用结果都是通过Web页面来显示的,所以与Web服务器的联系比较紧密。下面给出该软件结合Squid服务器的使用示例。通常情况,配置好 该软件之后,启动Web服务器(只有启动该服务器才能通过Web页面来查看日志统计的详细情况)和该软件即可:#service httpd start#/usr/bin/webalizer -c /etc/webalizer.conf启动Apache服务以及该软件后,就可以通过浏览器来查看Squid代理服务器的流量分析结果了,在IE浏览器的地址栏内输入Apache服务器的地址: http://210.77.27.59/usage,则得到如图所示结果。
图 查看流量统计信息
图中给出了流量分析的示意图以及一些数据说明,更详细的统计分析数据,可以点击图中“Summary by
Month”表格的“Jul
2005”超链接,则显示出更详细的信息,通过分析和查看这些统计图表的结果,用户可以清楚地知道Squid代理服务器使用的细节情况,并可以根据情况来
对服务器做出适当地调整和优化。最后,使用Webalizer还有一个需要注意的问题是:
通常并不需要每个用户都有权限来查看代理服务器的流量情况,否则对于系统来说是不安全的。非法用户为了掩盖自己非法使用代理服务器事实的目的,可以对流量
情况统计的结果进行修改、删除等操作。所以,我们需要使用访问控制策略来对上述分析图表的查看权限进行控制,可以在Apache的主配置文件/etc
/htpd/conf/httpd.conf中进行认证和授权的配置,如下所示:< Directory “/var/www/html/usage”>//使用基本认证方式AuthType Basic//指定认证域名称AuthName “admin”//指定认证口令文件存放的位置AuthUserFile /var/www/passwd/admin//授权给认证口令文件中的所有用户require valid-user< /Directory>认证和授权配置成功后,需要创建认证口令文件以及添加用户。#mkdir /var/www/passwd#cd /var/www/passwd#htpasswd -C admin liyangNew password:Re-type new password:Adding passwor for user liyang然后,将口令文件的属主改为apache,并重新启动Apache:#chown apache.apache admin#service httpd restart经过上面的配置后,用户在IE地址栏内输入路径: http://210.77.27.59/usage后,具有认证和授权的用户才能通过用户验证界面,查看Squid代理服务器的流量分析报表信息。安装II---------------------------------------------Webalizer 的配置不是很困难,但是对于新手来说,安装起来却十分的麻烦,本文将详细叙述安装过程,帮你一步一步走向成功! 
 Webalizer 吹牛在一台 200 Mhz 的普通 Pentium 机器上处理一万条记录只需要一秒钟,但是在我的赛扬机器上可没有那么快。大
概是我做了 IP 地址的反向解析的缘故。但是,不论速度如何,我认为 Webalizer 尽管不能和某些商业软件的界面媲美,但是和其他的开源软件比
起来,其统计能力要强得多。  一. 安装  Webalizer 需要用到相关的 jpeg, png 和 zlib库,这些库一般不缺省安装,因此初学者会感到难于下手。由于这些库具有相关性,因此下面的安装步骤不能颠倒:  1、jpeg 库的安装
  从 http://www.ijg.org/ 下载 jpeg 库,解开压缩文件后,进入到这个目录:
  ./configure
  make
  make install
  cd ..
  2、zlib 库的安装
  从 http://www.info-zip.org/pub/infozip/zlib/ 下载 zlib 库后,  gunzip zlib*.tar.gz
  tar -xvpf zlib-1.1.3.tar
  mv zlib-1.1.3 zlib
  cd zlib
  ./configure
  make
  make test
  make install
  cd ..3、libpng 库的安装  从 http://www.libpng.org/ 下载 libpng 后:  gunzip libpng*.tar.gz
  tar -xvpf libpng-1.0.10.tar
  mv libpng-1.0.10 libpng
  cd libpng
  cp scripts/makefile.linux makefile
  make
  make test
  make install
  cd ..  你还可以从 http://www.freetype.org/download.html 选择下载 freetype 字库,但是这个步骤不是必须的。
  cd freetype*
  make setup
  make
  make install
  cd ..  下面我们就可以开始安装 gd 库了:
  从 http://www.boutell.com/gd/ g下载 d-1.8.4.tar.gz :cd gd-1.8.4  #如果需要使用 Xpm 或者 TrueType 支持,在 make 之前修改 Makefile。  make  #很多人会经历找不到 gd.h 的问题,建议你在硬盘上搜索老的 gd.h 版本,然后 make install  接下来,我们就可以开始安装 Webalizer 了,从 http://www.mrunix.net/webalizer/ 下载后:  cd webalizer-2.01-06
  ./configure
  make
  make install  如果不是通过源码编译的方法来安装 Webalizer 的话,你需要备份 /etc/webalizer.conf。  如果需要使用 DNS 反向解析功能的话,我们还需要安装 Berkeley DB。具体的安装可以参考文档:DNS.README。
二. 配置:  一个普通的配置文件为:
  HideReferrer www.freelamp.com
  Incremental yes
  PageType htm*
  PageType cgi
  PageType php
  PageType pl
  IgnoreHist no
  CountryGraph yes
  IndexAlias index.cgi
  IndexAlias index.php
  HideReferrer Direct Request
  HideURL *.gif
  HideURL *.GIF
  HideURL *.jpg
  HideURL *.JPG
  HideURL *.png
  HideURL *.PNG
  GroupURL /cgi-bin/* CGI Scripts
  GroupURL /images/* Images
  GroupReferrer yahoo.com/ Yahoo!
  GroupReferrer excite.com/ Excite
  GroupReferrer infoseek.com/ InfoSeek
  GroupReferrer webcrawler.com/ WebCrawler
  GroupReferrer google.com/ Google
  GroupReferrer lycos.com/ Lycos
  GroupReferrer metacrawler.com/ Metacrawler
  GroupAgent MSIE Internet Exploder
  GroupAgent Mozilla Netscape
  GroupShading yes
  MangleAgents 3 
 然后我们运行/usr/local/bin/webalizer -Q -c /root
/webalizer.conf -n www.freelamp.com -o /home/freelamp/public_html/log
/ /home/freelamp/logs/freelamp.log 把这句话写入 crontab ,我们就能从http://www.freelamp.com/log/ 看到日志统计结果了。安装III--------------------------------------------最近在搞Linux下resin 服务器的日志分析,网上对webalizer这个工具评价挺高的,而且它是免费的,因此我就安装起来.
需求:
由于webalizer在做报表时需要用到绘图,因此在安装webalzer前要先装libpng 库,和gd库从 http://aleron.dl.sourceforge.net/sourceforge/libpng/libpng-1.2.7-config.tar.gz 下载gd-1.2.7.tar.gz后考到一个目录下解压
tar -xfzv libpng-1.2.7.tar.gz
cd libpng解压所在目录
./configure
make
make install
--------------libpng安装完毕---
现在开始 gd 库
http://www.boutell.com/gd/http/gd-2.0.28.tar.gz 下载gd.2.0.28.tar.gz
tar -xfzv gd-2.0.28.tar.gz
cd gd解压目录
./configure
make
make install
----------------gd库安装完-----
现在开始安装webalizer了1.从webalizer的官方站点http://www.mrunix.net/webalizer/下载webalizer,当前的最新版本是webalizer-2.01-10-src.tgz。2.首先解开源代码包:

tar xvzf webalizer-2.01-10-src.tgz

3.在生成的目录中有个lang目录,该目录中保存了各种语言文件,有繁体中文版本和简体中文版.4.然后进入生成的目录:

./configure
./configure make --with-language=simplified_chinese
make
make install

5.编译成功后,会产生一个webalizer可执行文件,可以将其拷贝到/usr/sbin/目录下:

cp webalizer /usr/sbin/

然后就可以开始配置webalizer了。(配置按自己的实际情况配置,里面有详细的注释)
配置文件默认是/etc/webalizer.conf
测试:
用root 登陆,执行 /etc/rc.d/webalizer
正常时提示:使用日志文件 /home/smp/resin/logs/access.log (clf)
输出结果到 /home/smp/resin/webapps/itemLog
产生报表的主机名是 '192.168.1.102:8080'
正在读取历史信息文件... webalizer.hist
正在生成报表 ---- 为 十一月 2004
正在生成综合报表
正在保存历史信息文件...
287 条记录 共用时 0.04 秒为了让webzlizer按计划运行,所有现在我写一个脚本:(在/etc/rc.c/webalizer)
export HOME=/export PATH=/usr/binexport LD_LIBRARY_PATH=/usr/local/lib
export NLS_LANG=american_america.ZHS16GBK
export CLASSPATH=/usr/local/libexport LANG=zh_CN.gb2312i#!/bin/sh
/usr/bin/webalizer > /etc/rc.d/out.log注意环境变量一定要配,不然执行不了的
在crontab -e 中添加
59 23 * * * /etc/rc.d/webalizer -c /etc/webalizer.conf
现在大功告成了.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: