Linux下使用GoAccess监控Nginx访问日志,goaccessnginx


本文介绍Nginx使用GoAccess查看Nginx访问日志。

最近在看极客时间-《Nginx核心知识一百讲》的视频,了解到GoAccess监控工具,所以最近对这个工具研究了一下,故写此文章。

1.GoAccess简介

GoAccess是一个开源的实时网络日志分析器和交互式查看器,可以在Linux系统或通过浏览器的终端中运行。它为需要动态可视化服务器报告的系统管理员提供快速且有价值的HTTP统计信息。

官网地址:https://goaccess.io/

官网首页:

特征页(使用谷歌浏览器翻译),感觉这里的翻译大致都可以理解,我就不一条一条写出来了。

2.安装GoAccess

官方文档下载地址:https://goaccess.io/download

如图:

首先安装GoAccess依赖,已经安装请忽略。

ncurses-devel:

yum install ncurses-devel

tokyocabinet-devel:

yum install tokyocabinet-devel

openssl-devel:

yum install openssl-devel

geoip-devel:

yum install GeoIP-devel.x86_64

然后就跟着官网步骤来就可以了,如下:
下载GoAccess

wget https://tar.goaccess.io/goaccess-1.2.tar.gz

解压

tar -xzvf goaccess-1.2.tar.gz

进入目录

cd goaccess-1.2 /

生成 Makefile,为下一步做准备

./configure --enable-utf8 --enable-geoip = legacy

编译

make

安装

make install

3.使用

这里参考陶辉在课程中使用的命令,如下

goaccess /opt/nginx/logs/access.log -o /opt/nginx/goaccess/report.html --real-time-html --time-format='%H:%M:%S' --date-format='%d/%b/%Y' --log-format=COMBINED 

其中/opt/nginx/logs/access.log为Nginx日志位置,/opt/nginx/goaccess/report.html为生成页面位置,COMBINED指定默认文件格式,real-time-html实时html。

在Nginx中对应server内加入如下配置:

location /report.html {
       alias /opt/nginx/goaccess/report.html;
}

重启Nginx,访问localhost:8080/report.html可以看到如图所示:

4.总结

工具含有的功能很强大,可以结合所在场景进行实时分析。

相关内容