利用goaccess做web服务的访问日志分析

行云流水
2022-03-30 / 1 评论 / 695 阅读 / 正在检测是否收录...

前言

nginx是我比较常用的web服务器,网站架设成功后,某天访问量激增。将日志文件下载下来,分析访问来源等情况。记录分析过程。正在用caddy代替nginx。

手动分析日志

提取日志

cat access.log  | grep '29/Mar/2022' > /tmp/n.log

总请求数

cat /tmp/n.log | wc -l

按IP请求分布

cat /tmp/n.log | awk '{ print $1 }' |  sort -k 1 | uniq -c | sort -rnk 1

每小时访问情况分布

cat /tmp/n.log | awk -F'[' '{print $2}' |awk -F':' '{print $1":"$2}'| sort -k 1 | uniq -c | sort -rnk 1

按访问状态码统计

cat /tmp/n.log | awk '{print $9}' | sort -k 1 | uniq -c | sort -rnk 1 

按接口请求分布

cat /tmp/n.log | awk '{print $7}' | sort -k 1 | uniq -c | sort -rnk 1 

goaccess分析

安装

# yum安装
yum install -y goaccess

# 编译安装最新版
yum install ncurses-devel -y
wget https://tar.goaccess.io/goaccess-1.7.tar.gz
tar -xzvf goaccess-1.7.tar.gz
cd goaccess-1.7/
./configure --enable-utf8
make 
make install

# 查看版本
/usr/local/bin/goaccess -V

配置

# 默认版本
vim /etc/goaccess/goaccess.conf

# 编译版本
vim /usr/local/etc/goaccess/goaccess.conf

终端分析

# 编译版本
/usr/local/bin/goaccess  -p /usr/local/etc/goaccess/goaccess.conf -f /var/log/vlive/caddy/n.log

web分析

# 默认安装版本
goaccess -f /tmp/n.log  -p /etc/goaccess/goaccess.conf  -o  /opt/project/myblog/app/typecho/log.html

# 编译版本
/usr/local/bin/goaccess  -p /usr/local/etc/goaccess/goaccess.conf -o  /opt/vlive/app/v/log.html  -f /var/log/vlive/caddy/n.log  

访问结果

https://v.webzhan.xyz/log.html

评论 (1)

取消
只有登录/注册用户才可评论
  1. 头像
    · Windows 10 · Google Chrome
    沙发

    表情

    回复