无论你是在网站托管业务,还是在自己的VPS上运行几个网站,你总会有需要显示访客统计信息,例如前几的访客、访问请求的文件(无论动态或者静态)、所用的带宽、客户端的浏览器,和访问的来源网站,等等。
GoAccess 是一款用于Apache或者Nginx的命令行日志分析器和交互式查看器。使用这款工具,你不仅可以浏览到之前提及的相关数据,还可以通过分析网站服务器日志来进一步挖掘数据 - 而且这一切都是在一个终端窗口实时输出的。由于今天的大多数web服务器都使用Debian的衍生版或者基于RedHat的发行版来作为底层操作系统,所以本文中我告诉你如何在Debian和CentOS中安装和使用GoAccess。
在Linux系统安装GoAccess在Debian,Ubuntu及其衍生版本,运行以下命令来安装GoAccess:
# aptitude install goaccess
在CentOS中,你将需要使你的EPEL 仓库可用然后执行以下命令:
# yum install goaccess
在Fedora,同样使用yum命令:
# yum install goaccess
如果你想从源码安装GoAccess来使用更多功能(例如 GeoIP 定位功能),需要在你的操作系统安装,然后按以下步骤进行:
# wget
# tar -xzvf goaccess-0.8.5.tar.gz
# cd goaccess-0.8.5/
# ./configure --enable-geoip
# make
# make install
以上安装的版本是 0.8.5,但是你也可以在该软件的网站下载页确认是否是最新版本。
由于GoAccess不需要后续的配置,一旦安装你就可以马上使用。
运行 GoAccess开始使用GoAccess,只需要对它指定你的Apache访问日志。
对于Debian及其衍生版本:
# goaccess -f /var/log/apache2/access.log
基于红帽的发行版:
# goaccess -f /var/log/httpd/access_log
当你第一次启动GoAccess,你将会看到如下的屏幕中选择日期和日志格式。正如前面所述,你可以按空格键进行选择,并按F10确认。至于日期和日志格式,你可能需要参考Apache 文档来刷新你的记忆。
在这个例子中,选择常见日志格式(Common Log Format(CLF)):
然后按F10 确认。你将会从屏幕上看到统计数据。为了简洁起见,这里只显示了首部,也就是日志文件的摘要,如下图所示:
通过 GoAccess来浏览网站服务器统计数据你可以按向下的箭头滚动页面,你会发现以下区域,它们是按请求排序的。这里提及的目录顺序可能会根据你的发行版或者你所选的安装方式(从源和库)不同而不同:
每天唯一访客(来自同样IP、同一日期和同一浏览器的请求被认为是是唯一访问)
请求的文件(网页URL)
请求的静态文件(例如,.png文件,.js文件等等)
来源的URLs(每一个URL请求的出处)
HTTP 404 未找到的响应代码
操作系统
浏览器
主机地址(客户端IP地址)
HTTP 状态代码
前几位的来源站点
来自谷歌搜索引擎的前几位的关键字
如果你想要检查已经存档的日志,你可以通过管道将它们发送给GoAccess,如下:
在Debian及其衍生版本:
# zcat -f /var/log/apache2/access.log* | goaccess
在基于红帽的发行版:
# cat /var/log/httpd/access* | goaccess