nginx日志分析工具goaccess的安装和使用

nginx日志分析工具goaccess的安装和使用

前言

goaccess官网: https://www.goaccess.cc/

挺实用的nginx日志分析工具,详细的功能介绍官网写的还是比较清楚的

下载安装

下载: wget http://tar.goaccess.io/goaccess-1.2.tar.gz

解压: tar -xzvf goaccess-1.2.tar.gz

先安装依赖:

yum install -y GeoIP-devel
yum install -y ncurses-devel

进入解压目录: cd goaccess-1.2/

编译安装:

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

make && make install

修改goaccess配置信息:
vim /usr/local/etc/goaccess.conf
将一下内容添加到尾部

time-format %H:%M:%S
date-format %d/%b/%Y
log-format %h %^[%d:%t %^] "%r" %s %b "%R" "%u"

控制台模式查看

goaccess -f /usr/local/nginx/logs/access.log

控制台操作方法

F1   主帮助页面 
F5   重绘主窗口 
q    退出 
1-15 跳转到对应编号的模块位置  
o    打开当前模块的详细视图
 j    当前模块向下滚动 
k    当前模块向上滚动 
s    对模块排序 
/    在所有模块中搜索匹配 
n    查找下一个出现的位置 
g    移动到第一个模块顶部 
G    移动到最后一个模块底部

网页查看

配置nginx:

location /goaccess.html {
    alias /usr/local/nginx/html/goaccess.html
}

重载配置: /usr/local/nginx/sbin/nginx -s reload

生成goaccess.html

goaccess /usr/local/nginx/logs/access.log -o /usr/local/nginx/html/goaccess.html

访问: 你的地址/goaccess.html
注意: 页面默认英文显示, 可以直接右键翻译成中文显示, 也能看得懂(有其他更好的方式处理,这里不折腾了)

实时监控

goaccess /usr/local/nginx/logs/access.log -o /usr/local/nginx/html/goaccess.html --real-time-html --daemonize

--real-time-html: 实时监控
--daemonize: 后台执行

设置密码

安装: yum -y install httpd-tools

创建用户设置密码
htpasswd -c /usr/local/nginx/passwd userlog

修改nginx配置
vim /usr/local/nginx/conf/nginx.conf

location /goaccess.html {
    alias /usr/local/nginx/html/goaccess.html;
    auth_basic "请输入用户名和密码";
    auth_basic_user_file /usr/local/nginx/passwd;
    proxy_http_version 1.1; # 这三行是为了实现websocket
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
}

重载ngixn
/usr/local/nginx/sbin/nginx -s reload

再次访问时就需要账号密码了:

posted @ 2020-07-10 00:06  ranblogs  阅读(732)  评论(0)    收藏  举报