Nginx初认识之 GoAccess可视化实时监控access.log日志 (四)


GoAccess可视化实时监控access.log日志

原理:使用goaccess命令goaccess会读取我们指定要分析的日志文件,生成一个类似报表的HTML文件,我们可以在nginx中给该html文件开一个http服务,这样我们就可以在浏览器访问这个html文件;同时goaccess会开启一个wss服务(该服务默认监听7890端口),当访问html报表时,该html的js代码中的wss客户端会请求goaccess的wss服务,goaccess接到请求后会再次读取日志文件,更新html报表。
通过以上的方式来实时更新监控access.log的情况。

下面是实现过程:
yum -y install goaccess

goaccess /var/log/httpd/access_log  -o /var/www/report.html --real-time-html --log-format=COMBINED --daemonize

-o /var/www/report.html     # 指定生成报表的位置
--real-time-html            # 指定实时更新(只要在浏览器一刷新html报表就会更新)
--daemonize                 # 后台运行

# 在nginx给报表文件开一个http服务:
 

server {
    listen 8088;
    server_name localhost;
    access_log logs/access.log main;
    
    location /report.html {
        alias /var/www/report.html;
    }
}


我遇到的一个问题:
由于我的服务器开启了防火墙,虽然打开了8088的防火墙,但是没有打开7890的防火墙,所以刷新时html发起的wss请求被屏蔽导致刷新后也没有实时更新监控情况。这里发起的wss请求算是外部请求而不是本服务器请求本服务器,所以会被屏蔽。打开7890端口的防火墙即可。

goaccess可以分析Apache和nginx的日志。
但是如果日志格式更改了,就需要在goaccess的配置文件中做出相应格式的更改,改的是--log-format这个参数。具体可以参考网上资料。

 

本文转载自: 张柏沛IT技术博客 > Nginx初认识之 GoAccess可视化实时监控access.log日志 (四)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值