Nginx-Go-Access-日志分析器
小Tips
将Linux服务器设置成中文:
localectl set-locale LANG=zh_CN.UTF8
GoAccess简介
GoAccess是一款开源的、实时的,运行在命令行终端下的web日志分析工具。该工具提供快速、多样的HTTP状态统计,可以方便管理员不再纠结于统计各类数据,和繁杂的指令以及一大堆管道/正则表达式say goodbye。
安装GoAccess
依赖安装
GoAccess在使用源码安装时,依赖下列组件。
为方便最终日志统计时显示IP地理位置,需要安装依赖项GeoIP-devel:
执行命令:
yum install GeoIP-devel.x86_64
安装ncurses-devel开发库:
执行命令:
yum install ncurses-devel
安装tokyocabinet-devel开发库:**
执行命令:
yum install tokyocabinet-devel
安装openssl-devel开发库:
执行命令:
yum install openssl-devel
安装GoAccess:
wget http://tar.goaccess.io/goaccess-1.2.tar.gz
tar -xzvf goaccess-1.2.tar.gz
cd goaccess-1.2/
./configure --enable-utf8 --enable-geoip=legacy
make
make install
检查是否安装成功:
goaccess -V
GoAccess的使用
当我们全部都安装完成后,就可以开始使用啦!
首先我们找到nginx
所在目录,并进入该目录:
whereis nginx
cd /xxx/xxx/xxx
ls
查看nginx
目录,找到logs
进入该目录下:
ls
cd logs
ls
最简单且最快速的用法:
goaccess access.log
回车执行然后空格键
选中,回车确认:
输入q
退出。
生成一个HTML报告:
goaccess access.log -a -o report.html
生成一个JSON报告:
goaccess access.log -a -d -o report.json
生成一个CSV报告:
goaccess access.log --no-csv-summary -o report.csv
开启实时HTML报告分析(webSocket)
需要创建一个html
文件来输出报告分析内容(承载报告的容器),所以我们得在nginx/html
目录下新创建一个.html
文件:
touch report.html
然后执行下面的命令:
goaccess access.log -a -o ../html/report.html --real-time-html --log-format=COMBINED
../html/report.html
对应的是你在nginx/html
目录下创建的.html
文件。
然后访问我们report.html
页面:
需要注意的是,确保你的nginx
服务启动了才能够正常进行访问。
详情请查看:GoAccess-操作手册