现在使用nginx建站的是越来越多了,我现在的博客是在VPS上,也是用nginx搭建的。nginx什么都好,就是日志分析方面弱了点,现在到网上找资料,基本上都是写利用Awstats来分析nginx日志的,但看了网上安装Awstats的教程,还真是复杂呀,人懒呀,所以放弃了Awstats。
不过好在,又在网上找到了webalizer这个工具,看介绍说是安装使用简易。哈,正适合我,反正nginx日志也就那么多资料,再怎么强大的分析工具也分析不出更多的东西。虽然网上说安装简单,看教程也的确是很简单,但偶一开始安装就是相当不顺利呀。到webalizer官网下载了最新版,可在用make命令编译时提示有错,无法编译成功,到网上搜索了半天也没到解决的办法。我都想着放弃了,看到一篇资料,上面说centos好象自带了webalizer。咦,如果是这样就有戏了,我的VPS的系统是centos5.5的,那也应该自带了吧。试一下看看,下面的步骤是我自己在CENTOS5.5上安装的,由于每人系统有差异,不保证在你的系统也能照搬哟,所以仅供参考。不过自带的是2.01版本的,目前webalizer的最新版本是2.23-03。
一、运行yum -y install webalizer,哈,成功安装。
二、修改配置文件
vi /etc/webalizer.conf
主要修改以下几项内容:
LogFile /logs/***.log
LogType clf
OutputDir /www/html/webalizers
HistoryName /var/lib/webalizer/webalizer.hist
Incremental yes
IncrementalName /var/lib/webalizer/webalizer.current
HostName www.***.com
Incremental 为yes时,使每天分析结果存在,否则只会为当时分析的,LogType 定义为clf ,所以要分析的nginx日志的
格式与clf符合,要不分析时会报错误,OutputDir为输出目录,最好放在网站的主目录下边,因为访问时比较方便。
三、可以写个自动脚本让它定时分析,或有需要时你才执行脚本
vi webalizer.sh
内容输入:/usr/local/bin/webalizer -c /etc/webalizer.conf -o /www/html/webalizers /logs/***.log
这里的配置文件,输出目录,分析的日志路径都指定了;当然,如果在配置文件中定义过的,在这里不指定也行。
之后再把它加进crontab任务计划里就OK了。如果执行webalizer.sh时出现“-bash: ./webalizer.sh: Permission denied“提示的话,就用chmod +x webalizer.sh为脚本添加执行权限。
Nginx日志分析工具webalizer
Leave a Comment Cancel reply
2 comments
Nginx日志分析工具webalizer
现在使用nginx建站的是越来越多了,我现在的博客是在VPS上,也是用nginx搭建的。nginx什么都好,就是日志分析方面弱了点,现在到网上找资料,基本上都是写利用Awstats来分析nginx日志的,但看了网上安装Awstats的教程,还真是复杂呀,人懒呀,所以放弃了Awstats。
不过好在,又在网上找到了webalizer这个工具,看介绍说是安装使用简易。哈,正适合我,反正nginx日志也就那么多资料,再怎么强大的分析工具也分析不出更多的东西。虽然网上说安装简单,看教程也的确是很简单,但偶一开始安装就是相当不顺利呀。到webalizer官网下载了最新版,可在用make命令编译时提示有错,无法编译成功,到网上搜索了半天也没到解决的办法。我都想着放弃了,看到一篇资料,上面说centos好象自带了webalizer。咦,如果是这样就有戏了,我的VPS的系统是centos5.5的,那也应该自带了吧。试一下看看,下面的步骤是我自己在CENTOS5.5上安装的,由于每人系统有差异,不保证在你的系统也能照搬哟,所以仅供参考。不过自带的是2.01版本的,目前webalizer的最新版本是2.23-03。
一、运行yum -y install webalizer,哈,成功安装。
二、修改配置文件
vi /etc/webalizer.conf
主要修改以下几项内容:
LogFile /logs/***.log
LogType clf
OutputDir /www/html/webalizers
HistoryName /var/lib/webalizer/webalizer.hist
Incremental yes
IncrementalName /var/lib/webalizer/webalizer.current
HostName www.***.com
Incremental 为yes时,使每天分析结果存在,否则只会为当时分析的,LogType 定义为clf ,所以要分析的nginx日志的
格式与clf符合,要不分析时会报错误,OutputDir为输出目录,最好放在网站的主目录下边,因为访问时比较方便。
三、可以写个自动脚本让它定时分析,或有需要时你才执行脚本
vi webalizer.sh
内容输入:/usr/local/bin/webalizer -c /etc/webalizer.conf -o /www/html/webalizers /logs/***.log
这里的配置文件,输出目录,分析的日志路径都指定了;当然,如果在配置文件中定义过的,在这里不指定也行。
之后再把它加进crontab任务计划里就OK了。如果执行webalizer.sh时出现“-bash: ./webalizer.sh: Permission denied“提示的话,就用chmod +x webalizer.sh为脚本添加执行权限。
# /usr/bin/webalizer -c /etc/webalizer.conf -o /webserver/nginx/logs/12.26.access.log
Error: Can't open log file /webserver/nginx/logs/access.log
centos 5.5,表示不行。也没错误原因
so usefull...thx...