微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用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/获取帮助信息

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐