每日一shell(七)統計站點的IP和PV
阿新 • • 發佈:2018-02-11
文件 pre fff .com user -o mar null chmod 通過nginx日誌文件統計出所有的IP和PV,列出排名前10的IP,以confluence知識庫系統為例:
nginx日誌文件為/var/log/nginx/access.log
# wc -l /var/log/nginx/access.log
95146 /var/log/nginx/access.log
shell腳本:
# vim accessnum.sh #!/bin/bash #writen by Gavin Zhao #This shell will print how many users access your server by web awk ‘/itks/ {print $1}‘ /var/log/nginx/access.log | sort -rn | uniq -c | sort -rn | awk ‘{$2 ~ /10./ && $2!="10.1.46.189" && (tot=to t+$0)};END{print NR,tot}‘ > /root/script/num.txt 2> /dev/null ip=`awk ‘{print $1}‘ /root/script/num.txt` pv=`awk ‘{print $2}‘ /root/script/num.txt` echo "截止到目前IT知識庫的總訪問量:$pv" echo "截止到目前IT知識庫的總訪問IP數:$ip" echo "排名前10的IP如下:" awk ‘/itks/ {print $1}‘ /var/log/nginx/access.log | sort -rn | uniq -c | sort -rn | awk ‘ $2 ~ /10./ && $2 !~ /10.1.46.189|10.1.116. 4/ && NR<=12 {print $2}‘
chmod +x accessnum.sh
每日一shell(七)統計站點的IP和PV