使用GoAccess实现可视化实时监控Nginx access日志

1、GoAccess简介:

GoAccess是一款开源的且具有交互视图界面的实时Web日志分析工具,其核心思想是实时快速分析和查看Web服务器统计信息,GoAccess支持生成完整的实时HTML报告以及JSON和CSV格式的报告。

2、yum方式安装GoAccess所需软件包:

# yum install GeoIP-devel ncurses ncurses-devel wget epel-release

3、编译安装GoAccess:

# wget https://tar.goaccess.io/goaccess-1.3.tar.gz

# tar -xf goaccess-1.3.tar.gz -C /usr/src

# cd /usr/src/goaccess-1.3

# ./configure --prefix=/usr/local/goaccess --enable-utf8 --enable-geoip

# make && make install

4、配置环境变量:

# vim /etc/profile.d/goaccess.sh

export PATH=/usr/local/goaccess/bin:$PATH

# . /etc/profile.d/goaccess.sh

# goaccess -V

使用GoAccess实现可视化实时监控Nginx access日志

5、修改Nginx.conf配置文件

# vim /etc/Nginx/Nginx.conf,确认如下配置认已启用:

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

                      '$status $body_bytes_sent "$http_referer" '

                      '"$http_user_agent" "$http_x_forwarded_for"';

access_log  /var/log/Nginx/access.log  main;

6、修改goaccess.conf配置文件

# cd /usr/local/goaccess/etc/goaccess/

# cp goaccess.conf{,.bak}

# vim goaccess.conf

            修改

              修改

#time-format   %H:%M:%s

time-format   %H:%M:%s

#date-format   %d/%b/%Y

date-format   %d/%b/%Y

#log-format   %h %^[%d:%t %^] "%r" %s %b "%r" "%u"

log-format   %h %^[%d:%t %^] "%r" %s %b "%r" "%u"

#log-format   COMBINED

log-format   COMBINED

#addr   0.0.0.0

addr   192.168.0.121

#daemonize   false

daemonize   true

#port   7890

port   7890

#pid-file   /var/run/goaccess.pid

pid-file   /var/run/goaccess.pid

#real-time-html   true

real-time-html   true

#ws-url   goaccess.io

ws-url   192.168.0.121

#log-file   /var/log/apache2/access.log

log-file   /var/log/Nginx/access.log

#config-file   <filename>

config-file   /usr/local/goaccess/etc/goaccess/goaccess.conf

#   output /path/file.html

output   /usr/share/Nginx/html/goaccess.html

 7、控制台运行GoAccess:

# goaccess /var/log/Nginx/access.log

使用GoAccess实现可视化实时监控Nginx access日志

使用GoAccess实现可视化实时监控Nginx access日志

使用GoAccess实现可视化实时监控Nginx access日志

使用GoAccess实现可视化实时监控Nginx access日志

使用GoAccess实现可视化实时监控Nginx access日志

使用GoAccess实现可视化实时监控Nginx access日志

8、后台实时生成数据到GoAccess界面,并将分析结果保存为HTML:

# goaccess -p /usr/local/goaccess/etc/goaccess/goaccess.conf

使用GoAccess实现可视化实时监控Nginx access日志

或# goaccess /var/log/Nginx/access.log --time-format='%H:%M:%s' --date-format='%d/%b/%Y' --log-format=COMBINED -o /usr/share/Nginx/html/goaccess.html --addr=192.168.0.121 --real-time-html --daemonize

# ps -ef | grep goaccess

# ss -tunlp | grep 7890

备注:如果需要输出实时HTML,需要打开防火墙7890端口

9、浏览器访问http://192.168.0.121/goaccess.html

使用GoAccess实现可视化实时监控Nginx access日志

使用GoAccess实现可视化实时监控Nginx access日志

使用GoAccess实现可视化实时监控Nginx access日志

使用GoAccess实现可视化实时监控Nginx access日志

使用GoAccess实现可视化实时监控Nginx access日志

10、使用ab命令进行压测,模拟访问,观察页面数值是否实时变化:

# yum -y install httpd-tools

# ab -n 500000 -c 20 http://192.168.0.121/

使用GoAccess实现可视化实时监控Nginx access日志

使用GoAccess实现可视化实时监控Nginx access日志

使用GoAccess实现可视化实时监控Nginx access日志

备注:可从https://goaccess.io/获取帮助信息

相关文章

今天小编给大家分享一下excel图案样式如何设置的相关知识点,...
这篇文章主要讲解了“win10设置过的壁纸如何删除”,文中的讲...
这篇“Xmanager怎么显示远程linux程序的图像”文章的知识点大...
今天小编给大家分享一下xmanager怎么连接linux的相关知识点,...
这篇“如何重置Linux云服务器的远程密码”文章的知识点大部分...
本篇内容介绍了“Linux云服务器手动配置DNS的方法是什么”的...