Nginx日志分析
Linux通过uniq工具进行简单的日志分析
一、统计PV,UV数
1、统计所有的PV数
cat access.log | wc -l
2、统计指定某一天的PV数
cat access.log-20220204 | sed -n '/03\/Feb\/2022/p' | wc -l
3、根据访问IP统计UV
awk '{print $1}' access.log|sort | uniq -c
二、IP相关统计
1、统计每个IP访问次数
awk '{print $1}' access.log|sort | uniq -c
2、统计IP访问量(独立ip访问数量)
awk '{print $1}' access.log | sort -n | uniq | wc -l
3、查看访问最频繁的前100个IP
awk '{print $1}' access.log | sort -n |uniq -c | sort -rn | head -n 100
4、查看访问100次以上的IP
awk '{print $1}' access.log | sort -n |uniq -c |awk '{if($1 >100) print $0}'|sort -rn
5、查询某个IP的详细访问情况,按访问频率排序
grep '101.242.68.110' access.log |awk '{print $7}'|sort |uniq -c |sort -rn |head -n 100
三、页面访问统计
1、查看访问最频的api(TOP100)
awk '{print $7}' access.log | sort |uniq -c | sort -rn | head -n 100
2、查询访问最频繁的api
awk '{print $7}' access.log|sort | uniq -c |sort -n -k 1 -r|more
3、查看最近1000条记录,访问量最高的页面
tail -1000 access.log |awk '{print $7}'|sort|uniq -c|sort -nr|less
uniq 命令安装:
#Debian apt-get install coreutils #Ubuntu apt-get install coreutils #Alpine apk add coreutils #Arch Linux pacman -S coreutils #Kali Linux apt-get install coreutils #CentOS yum install coreutils #Fedora dnf install coreutils #OS X brew install coreutils #Raspbian apt-get install coreutils #Docker docker run cmd.cat/uniq uniqz