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
再次访问时就需要账号密码了:


浙公网安备 33010602011771号