我们做了网站,系统自动生成了日志,但是日志有时候太长太繁琐,或者对于一些初学者来说根本就看不懂,所以为了方便,安装一款网站日志分析工具是十分有必要的。我这里简单介绍两款还算比较火的工具给大家。
GoAccess
GoAccess是一款唯数不多可以分析Nginx并且开源的网站日志实时分析工具。可以的分析的内容很多,主要是访问概况、动态页面请求、静态页面请求(如图片、样式表、脚本等)、访客排名,访客使用的操作系统,访客使用的浏览器,来路域名,404 错误,搜索爬虫,搜索关键词等等。官方网站是https://www.goaccess.io/
GoAccess有两种不同的安装方式。
一种就是通过套件安装,另外一种就是源码安装。安装方法都在https://www.goaccess.io/download里面可以看到。我这里贴一下源码安装的代码。
$ wget http://tar.goaccess.io/goaccess-1.1.1.tar.gz $ tar -xzvf goaccess-1.1.1.tar.gz $ cd goaccess-1.1.1/ $ ./configure --enable-geoip --enable-utf8 $ make # make install
但是经常这样安装会报错,我把我安装过程中遇到的错误及解决办法列举出来:
1、错误提示:
configure: error: *** Missing development files for the GeoIP library
解决:
debian
apt-get install libgeoip-dev
Centos
yum install geoip-devel ncurses ncurses-devel glib2-devel
2、错误提示:configure: error: *** Missing development libraries for ncursesw
解决:
apt-get install libncursesw5-dev
3、错误提示: I get No package GeoIP available.
解决:添加epel源(来源:http://www.centoscn.com/CentOS/config/2014/0920/3793.html)
1)、安装yum优先级插件
yum install yum-priorities
2)、添加epel源
rpm -Uvh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
epel其他下载地址 :http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
http://www.rpm-find.net/linux/RPM/download.fedora.redhat.com/pub/fedora/epel/6/i386/epel-release-6-8.noarch.html
3)、导入key:
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
4)、修改/etc/yum.repos.d/epel.repo文件
在[epel]最后添加一条属性 priority=11
vi /etc/yum.repos.d/epel.repo
意思是yum先去官方源查,官方没有再去epel的源找
5)、重建缓存
yum makecache
以下为相关截图:
安装完毕后运行goaccess验证是否安装成功。
首先运行命令弹出格式选择对话框
goaccess ?-f /home/wwwlogs/access.log
nginx日志应该选择NCSA格式,用空格键进行选择。
以下为相关数据截图
其实最直观的还是生成HTML网页格式的查看,相关命令如下:
goaccess -f /home/wwwlogs/access.log --log-format=COMBINED -a > /home/wwwroot/website/report.html
具体的安装和使用请参考:https://www.goaccess.io/man以及https://www.goaccess.io/faq
Awstats
Awstats是分析Apache网站日志的利器。它可以统计如下信息:一:访问量,访问次数,页面浏览量,点击数,数据流量等;二:精确到每月、每日、每小时的数据;三:访问者国家;四:访问者IP;五:Robots/Spiders的统计;六:访客持续时间;七:对不同Files type 的统计信息;八:Pages-URL的统计;九:访客操作系统浏览器等信息;十:其它信息(搜索关键字等等)。官方网站为http://www.awstats.org/。
Awstats安装非常简单,只需要把安装包下载下来,改名放到指定位置就可以了。
cd /usr/local/ wget https://prdownloads.sourceforge.net/awstats/awstats-7.6.zip ls unzip awstats-7.6.zip mv awstats-7.6 awstats cd awstats
但是运行awstats也是需要安装GeoIP的。
yum install –y GeoIP GeoIP-dev GeoIP-data wget http://www.maxmind.com/download/geoip/api/pureperl/Geo-IP-PurePerl-1.19.tar.gz tar zxvf Geo-IP-PurePerl-1.19.tar.gz cd Geo-IP-PurePerl-1.19 perl Makefile.PL make make install
安装完毕以后需要先配置。
中间如果有询问选项就选择none,或者直接回车,在询问统计域名的时候输入相应域名就可以,我这里是nicky1605.com
cd /usr/local/awstats/tools/ ./awstats_configure.pl
配置完毕以后运行提示缺少/var/lib之类的需要自己手动创建,然后再更新,最后命令生成静态HTML文件。
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=nicky1605.com mkdir /var/lib/awstats /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=nicky1605.com /usr/local/awstats/tools/awstats_buildstaticpages.pl -update -config=nicky1605.com -lang=cn -dir=/home/wwwroot/awstats -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
以下是运行的相关截图。
GeoIP数据库如果提示没有dat文件可以手动下载安装。
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz gunzip GeoIP.dat.gz?gunzip GeoLiteCity.dat.gz mv?GeoIP.dat?GeoIPCity.dat?/usr/share/GeoIP/
最后修改/etc/awstats/awstats.nicky1605.com.conf (以我为例)中的文件为
LoadPlugin="geoip GEOIP_STANDARD /usr/share/GeoIP/GeoIP.dat" LoadPlugin="geoip_city_maxmind GEOIP_STANDARD /usr/share/GeoIP/GeoIPCity.dat"
如果生产的HTML文件中关于搜索关键字中中文乱码的问题,需要打开/etc/awstats/awstats.nicky1605.com.conf(以我为例)
把
#LoadPlugin="decodeutfkeys"
的#号去掉保存,再运行以下命令
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=nicky1605.com /usr/local/awstats/tools/awstats_buildstaticpages.pl -update -config=nicky1605.com -lang=cn -dir=/home/wwwroot/awstats -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
相关参考
日志分析工具Awstats实战之Nginx篇:分析结果静态化? ?http://os.51cto.com/art/201310/414646.htm
日志分析工具Awstats实战之Nginx篇:分析结果动态化 ? http://os.51cto.com/art/201310/414882.htm
LNMP使用Awstats分析Nginx日志[转载] ? ?https://www.vpser.net/manage/lnmp-awstats-nginx-logs.html
使用 awstats 分析 Nginx 的访问日志 ? ?http://www.ibm.com/developerworks/cn/linux/l-cn-awstats-nginx/index.html
awstats+jawstats构建日志自动分析系统 ? ?http://www.linuxde.net/2013/06/14027.html
Linux 日志分析工具之awstats详解 ? ?http://freeloda.blog.51cto.com/2033581/1346412
awstats中文关键字乱码 ??http://www.361way.com/awstats-chinese-error/1643.html
awstats基本配置以及IP地区的显示 ??http://www.jianshu.com/p/58b85856ab5a
用goaccess每天自动分析nginx日志 ??http://joeyang.blog.51cto.com/9092193/1878880
GoAccess - Linux系统Web实时日志分析和统计工具 ??http://www.laozuo.org/9107.html
本文作者为Nicky,转载请注明。