前言
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
log-format %h %^[%d:%t %^] "%r" %s %b "%R" "%u"
date-format %d/%b/%Y
time-format %H:%M:%S
time-format %s
date-format %s
log-format CADDY
终端分析
# 编译版本
/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)