网站日志分析平台nginx+awstats+crontab
一,日志的切割nginx日志格式
log_formatmain'$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
shell脚本如下:
#!/bin/bash
logs_path="/nginx/logs/"
mv${logs_path}access.log ${logs_path}access_$(date -d "yesterday" +"%Y%m%d").log
kill -USR1 `cat /nginx/logs/nginx.pid`
其中 "/nginx/logs" 指的是nginx的log日志文件所在目录,生成的日志文件是以昨天日期命名的。
合并与排序日志:
ls *.gz | xargs -n1 gzip -d
logs_path="/var/log/nginx/bj/"
sort -k 4 ${logs_path}*-access.log* > ${logs_path}bjmama_$(date -d "yesterday" +"%Y%m%d").log
二,Awstats的安装和配置
安装
# tar zxvf awstats-7.0.tar.gz
# cp -r awstats-7.0/usr/local/awstats
# cd /usr/local/awstats/tools
# perl awstats_configure.pl
安装时设置的域名为:www.bjmama.comAwstats的配置文件默认会存储在/etc/awstats/目录下会自动生成 awstats.www.bjmama.com.conf(配置多站点分析,就要从这里下手)。
配置
vi awstats.www.bjmama.com.conf
LogFile="/nginx/logs/access_%YYYY-24%MM-24%DD-24.log"
这个意思是要去读取nginx昨天的日志文件,关于后边%YYYY-24%MM-24%DD-24的设置
SiteDomain="www.bjmama.com"
HostAliases="www.bjmama.com www.bjmama.com 127.0.0.1 localhost"
三,开始分析、生成结果
# mkdir /var/lib/awstats
# chmod 777 /var/lib/awstats
使用这个命令:
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.bjmama.com
这个命令会把结果生成到/var/lib/awstats 目录下 awstatsXXXX.www.XXXX.com.txt文件。
生成html页面
perl /usr/local/awstats/tools/awstats_buildstaticpages.pl -update \ -config=www.bjmama.com -lang=cn \ -dir=/html/awstats \ -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
这样就会在/html/awstats目录下生成很直观的html分析结果页。
四,自动化
0 0 * * * cut_nginx_log.sh
0 1 * * * /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.bjmama.com
0 2 * * * perl /usr/local/awstats/tools/awstats_buildstaticpages.pl -update -config=www.bjmama.com -lang=cn -dir=/html/awstats -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
五,nginx出统计报表
APACHE访问页面出现500错误,nginx能正常
建立站点目录
location /gz {
alias html/awstats/gz;
indexawstats.www.gzmama.com.html;
auth_basic "GZ input you user name and password";
auth_basic_user_file /opt/nginx/conf/pass/gz_pass;
}
过来看看的 支持一下:lol 走过了年少,脚起了水泡 解释就是掩饰,掩饰就是编故事! 我是个凑数的。。。 月经不仅仅是女人的痛苦,也是男人的痛苦。
页:
[1]