当前位置: 首页 > 网站建设 > CentOS安装GoAccess快速方便的分析网站日志

CentOS安装GoAccess快速方便的分析网站日志

发布于:2018-7-16 最后更新:2019-12-23 网站建设 0条评论 8,393 views
本站提供Linux服务器运维,自动化脚本编写等服务,如有需要请联系博主微信:xiaozme

GoAccess旨在成为一个基于终端的快速日志分析器,其核心思想是实时快速分析和查看Web服务器统计信息,GoAccess可分析Apache/Nginx等WEB日志,同时还支持生成HTML、JSON、CSV等数据报告。

安装GoAccess

GoAccess支持yum安装,直接执行命令yum -y install goaccess即可,不过为了拥有更大的灵活性,推荐使用下面的方法编译安装。

#安装依赖
yum -y install libmaxminddb-devel ncurses-libs ncurses-devel openssl openssl-devel
#下载源码
wget https://tar.goaccess.io/goaccess-1.2.tar.gz
#解压
tar -xzvf goaccess-1.2.tar.gz
#进入目录
cd goaccess-1.2/
#编译安装
./configure --enable-utf8 --enable-geoip=mmdb --with-openssl --with-libmaxminddb-devel
make && make install

如果不出意外输入命令goaccess -V就可以看到对应的版本了。更多的编译参数可参考官方帮助文档:https://goaccess.io/download

运行GoAccess

最简单的做法就是直接运行goaccess 日志路径根据提示选择,如果您觉得终端的方式看起来不习惯,我们还可以生成静态的HTML报告,运行下面的命令即可:

goaccess xiaoz.me_nginx.log -a -o xxx.html --log-format=COMBINED
  • xiaoz.me_nginx.log:为日志文件具体路径
  • xxx.html:HTML报告的名字,可指定到站点目录,然后直接访问查看
  • --log-format=日志文件格式,COMBINED为标准格式

定时生成HTML报告到站点目录

每次都去手动生成报告太麻烦啦,有没有更简便的方法?写个简单的shell脚本自动生成就搞定啦,将下面的内容另存为goaccess.sh

#!/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
export PATH
goaccess xiaoz.me_nginx.log -a -o /xiaoz.me/$(date +%Y-%m-%d).html --log-format=COMBINED
  • xiaoz.me_nginx.log:日志文件路径(请填写绝对路径)
  • /xiaoz.me/:为您站点根目录,根据自身情况修改

别忘记加上可执行权限:chmod u+x goaccess.sh,再使用crontab每小时生成一次HTML报告。

#添加计划任务
crontab -e
#添加以下内容,/root/goaccess.sh为上面脚本的绝对路径
0 * * * * /root/goaccess.sh > /dev/null
#重载crontab
service crond reload

大功告成,这样goaccess每隔1小时为我们生成一次HTML日志报告,等待一段时间访问https://domain.com/当前日期.html(日期格式如2017-07-16)就可以看到直观的HTML报告啦。

总结

goaccess还支持更多的功能,比如同时分析多个日志文件、IP查询等功能,更多使用帮助可通过goaccess -h进行查看。在之前还分享过Windows下日志分析工具《360星图》也是很不错的,并且是中文显示,看起来更加友好。

GoAccess官网:https://goaccess.io/
演示地址:https://rt.goaccess.io/?20180613194436

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注