GoAccess - 图形化Nginx日志分析工具

(懒得配图 -.-)

安装

自编译安装或包管理器安装,具体移步官网 —— GoAccess

配置GoAccess日志格式

安装完之后,编辑配置文件 /etc/goaccess.conf

time-format %T
date-format %d/%b/%Y
log-format %h - %^ [%d:%t %^] requesthost:"%v"; "%r" requesttime:"%T"; %s %b "%R" - %^"%u"

这里我增加了requesthostrequesttime的显示,对应也要更改nginx的日志格式,编辑自己的nginx配置文件nginx.conf

log_format  main  '$remote_addr - $remote_user [$time_local] requesthost:"$http_host"; "$request" requesttime:"$request_time"; '
    '$status $body_bytes_sent "$http_referer" - $request_body'
    '"$http_user_agent" "$http_x_forwarded_for"';

启动

修改完配置文件后,最后我们以守护进程的形式启动GoAccess,并通过report页面实时监控访问数据

goaccess /etc/nginx/log/access.log -o /etc/nginx/html/report.html --real-time-html --daemonize  # 自行替换文件路径

这样会生成一个report.html的网页,自行通过nginx配置访问路径即可;
值得注意的一点,这样的页面只是一个生成时的静态数据,GoAccess的实时刷新数据是通过websocket推送的,默认端口是7890,记得服务器防火墙要打开此端口

参考资料

Goaccess---良心nginx日志分析工具

添加新评论