Awstats是一个免费非常简洁而且强大有个性的网站日志分析工具,可以用来分析apache日记及nginx日志。我们这里只分享nginx日志分析
下载awstats开源软件
wget http://awstats.sourceforge.net/files/awstats-7.0.tar.gz
解压 tar -zxvf awstats-7.0.tar.gz
移动及改名 mv awstats-7.0 /usr/local/awstats
修改权限
chown -R root:root /usr/local/awstats
chmod -R =rwX /usr/local/awstats
chmod +x /usr/local/awstats/tools/*.pl
chmod +x /usr/local/awstats/wwwroot/cgi-bin/*.pl
cd /usr/local/awstats/tools
./awstats_configure.pl
#现在进入配置文件,按照下面的输入
# none (因为nginx已经安装好了,所以是none)
# y (创建新的一个配置文件)
# analyse (基于什么域名)
#
#A SIMPLE config file has been created: /etc/awstats/awstats.analyse.conf
#You should have a look inside to check and change manually main parameters.
#You can then manually update your statistics for 'analyse' with command:
#> perl awstats.pl -update -config=analyse
#You can also build static report pages for 'analyse' with command:
#> perl awstats.pl -output=pagetype -config=analyse
#-----> Create config file '/etc/awstats/awstats.analyse.conf'
# Config file /etc/awstats/awstats.analyse.conf create
以上步骤默认会产生配置文件 ==>> /etc/awstats/awstats.analyse.conf
awstats 配置文件的命名规则:awstats.website.conf
修改配置文件
# vim /etc/awstats/awstats.analyse.conf
# LogFile="/var/log/httpd/mylog.log"
改为 LogFile="/usr/local/nginx/logs/access.log"
#日志数据库路径创建
mkdir -p /var/lib/awstats
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=analyse
awstats.pl 会去读取-config中的参数,把 analyse 扩展成 awstats.analyse.conf 去 /etc/awstats 目录或者当期目录下搜索,根据读取到的配置文件运行程序。
分析日志:运行后将这样的日志统计结果归档到一个AWStats的数据库(纯文本)里;
然后是通过后台脚本将输出导出成静态文件;
先生成存放awstats生成的静态文件的目录,我这里用的是/var/www/analyse/awstats
mkdir /var/www/analyse/awstats
cd /usr/local/awstats/tools/awstats_buildstaticpages.pl -update -config=analyse -lang=cn -dir=/var/www/analyse/awstats
awstats_buildstaticpages.pl 会根据 -config 的参数去读取里面的 DirData 路径下数据库配置文件,然后生成静态的html文件,生成的文件重定向到/var/www/analyse/awstats/
最后是nginx的配置文件,根据自己路径配置
server {
listen 8000;
server_name localhost;
root /var/www/awstats;
index index.html;
#charset koi8-r;
#access_log logs/host.access.log main;
location ~ ^/awstats/ {
root /var/www/awstats;
autoindex on;
index index.html;
access_log off;
}
location ~ ^/icon/ {
root /usr/local/awstats/wwwroot/;
index index.html;
access_log off;
}
}
访问之前确认一下html文件是否生成
cd /var/www/analyse/awstats
日志库文件有没有产生
cd /var/lib/awstats/
awstats082016.analyse.txt
访问: ip:8000/awstats/xxx.html
定时处理写入crond:
shell:
#!/bin/bash
mv /usr/local/nginx/logs/access.log /data/log/nginx/access_$(date -d "today" +"%Y%m%d").log
kill -USR1 `cat /data/log/nginx/nginx.pid`
定时产生html文件
57 23 * * * /bin/bash /data/script/cut_nginx_log.sh
58 23 * * * /usr/local/awstats/tools/awstats_buildstaticpages.pl -update -config=analyse -lang=cn -dir=/var/www/analyse/awstats
web界面: