跳至主要内容

squid日志分析

最近在测试安装通过squid进行流量监控和计费的工具,网上找了很多类似的,但是发觉并不如意,比如网上的1.Squid代理服务器的计费与流量控制2.sarg的安装和使用,目前用到的技术都是对squid的access.log进行分析和实用,网上看到的都是以redhat为平台的实用软件,而且相对来说版本都是比较陈旧,在这里你会找到很多squid官方推出的一些类似的scripts。
那我在这里就基于目前实现的两种方法在我的机子上进行下评论:(到目前为止我还没完全测试完成,仅鉴于参考)
安装环境:Ubuntu7.04
基于第一种apache2+php+mysql+mysar的使用,掠过前面的部分,着重开始mysar,其实你在网上找到的那个文章比较完整,但是似乎到后面做下去发现很难,该有的图也没有,而且PHP也没有,关于PHP,本人目前没有学过,所以放弃了对于mysar的实用。
阐述第二种:
sarg的实用和安装
在cn99源里面你使用apt-get install sarg以后所下载到的程序是sarg-2.2.2的,目前的最新版本是2.2.3的,但是我编译了一下用make install命令安装失败,貌似是c语言环境失败,算咯,就用cn99里的好了。
(起初我找不到sarg已经安装好的目录,安装以往的思维一般新的soft都安装在/etc目录下,然后死命的找,搞的我头大,到后面没办法只能find -name sarg* 了一下,发觉它其实被默认为squid的一个服务套件,sarg.conf在/etc/squid目录下。着实为自己汗一个-_____-)
然后在是sarg.conf进行配置,由于输出是以web方式进行输出的,所以有对图片大小和font的设置,但是关系不是很大。
以下是一些关键字的配置
language english"
指定网页报告文件的语言类型,很可惜不支持中文网页。
"access_log /var/log/squid/access.log"
指定squid日志文件绝对路径。
"title "squid 使用报告"
指定网页标题。
"temporary_dir /var/tmp"
指定临时文件目录,请确认该目录所在的分区足够大先,1g以上。
"output_dir /var/www/html/sarg" (默认目录为/var/www/squid-reports)
指定网页报告文件输出路径。
"topuser_sort_field connect reverse bytes reverse"
在top排序中,指定连接次数(connect),访问字节数(bytes)采用降序排列,升序请使用normal替代reverse
"user_sort_field connect reverse"
对于每个用户的访问纪录,连接次数按降序排列
"exclude_hosts /usr/local/sarg/norecords"
指定不计入排序的站点列表文件名为/usr/local/sarg/norecords,对于客户端 访问的这些站点,将不会被top排序中,norecords文件样本:
google.com
csdn.net
microsoft.com
"date_format e"
启动sarg进程是如果使用日期参数-d时,请使用和配置文件一致的日期格:
e (europe=dd/mm/yy),
u (usa=mm/dd/yy),
w (weekly=yy.ww)
"topuser_fields num date_time userid connect bytes %bytes in-cache-out used_time milisec %time total average"
指定top排序的域,可以取掉一些不关紧要的域:in-cache-out used_time等
"weekdays 1-5"
指定top排序星期周期为星期一到星期五,0表示星期天
"hours 9-11,13-16"
指定top排序的时间周期为9:00-11:59,13:00-16:59,


其他似乎也没有太大的配置。后面的设置待续,因为还在研究 =。=

sudo sarg [options] options=daily,weekly,monthly,today这些目前测试可用

评论

此博客中的热门博文

4 steps to delete account in Gerrit DB

4 steps to delete account in DB. Delete from accounts where preferred_email=’’; delete from account_ssh_keys where account_id=''; delete from account_external_ids where external_id='gerrit:*’; delete from account_external_ids where external_id='username:*’; whatever it was in H2 database and postgres db . H2: ssh -p 24198 localhost gerrit gsql Postgres: psql

mod

apache安装后,如果想再添加模块,往往不想重新安装一次,再者,我在安装中发现,并不是安装文件中所有的modules都会被默认安装,即使在安装中使用了 ./configure --prefix=/usr/local/apache --enable-so --enable-modules=all --enable-mods-shared=all也是如此。我使用上述方法安装的apache2.2.6就没有安装proxy相关模块。这时,需要手工生成so文件,但会自动的被复制到你的apache安装目录的modules中,然后修改apache的配置文件,加载相关模块,验证apache配置并重启服务即可。以上描述的具体操作步骤如下: 操作系统:linux redhat 4.5 ES apache版本:2.2.6 可自行下载tar包 1. 拷贝安装包到/usr/local,并在目标目录下进行解压。[root@localhost local]# cd /usr/local[root@localhost local]# tar -zxvf httpd-2.2.4.tar.gz2. 配置安装参数,安装的目标目录为/usr/local/apache,建议设置enable-mods-shared=all,不用的module注释掉就行了![root@localhost local]# cd httpd-2.2.4[root@localhost httpd-2.2.4]# ./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all3. 编译并安装。[root@localhost httpd-2.2.4]# make[root@localhost httpd-2.2.4]# make install4. 启动Apache,并测试。[root@localhost httpd-2.2.4]# cd /usr/local/apache/bin[root@localhost bin]# ./apachectl start 打开浏览器,并在地址栏中输入主机的IP地址如 http://192.168.1.254/ 如果出现以下画面则说明安装成功。It works! 注意:安装完成后检查系统服务中的HTTPD服务是否已