PV(訪問量):即Page View, 即頁面瀏覽量或點擊量,用戶每次刷新即被計算一次。
UV(獨立訪客):即Unique Visitor,訪問您網站的一台電腦客戶端為一個訪客。00:00-24:00內相同的客戶端只被計算一次。
IP(獨立IP):即Internet Protocol,指獨立IP數。00:00-24:00內相同IP地址之被計算一次。
1.根據訪問IP統計UV
awk '{print $1}' access.log|sort | uniq -c |wc -l
2.統計訪問URL統計PV
awk '{print $7}' access.log|wc -l
3.查詢訪問最頻繁的URL
awk '{print $7}' access.log|sort | uniq -c |sort -n -k 1 -r|more
4.查詢訪問最頻繁的IP
awk '{print $1}' access.log|sort | uniq -c |sort -n -k 1 -r|more
5.根據時間段統計查看日志
(1)cat access.log| sed -n '/14\/Mar\/2015:21/,/14\/Mar\/2015:22/p'|more
(2)grep '日期時間' access.log | wc -l 統計某段時間的訪問量
6.統計IP訪問個數(和根據訪問IP統計UV一樣)
cat access.log | awk '{ips[$1]+=1} END{for(ip in ips) print ips[ip],ip}' | sort -nr | wc -l
7.查看3點-6點之間的Ip訪問個數
grep "2016:0[3-6]" access.log | awk '{ips[$1]+=1} END{for(ip in ips) print ips[ip],ip}' | sort –nr | wc -l
8.查看3點-6點之間的ip訪問數,並且訪問數>=200的ip.
grep '2016:0[3-12]' access.log | awk '{ips[$1]+=1}END{for(ip in ips) if(ips[ip]>=200) print ips[ip],ip}' | sort -nr
9.查看並發連接數
netstat -nat|grep ESTABLISHED|wc -l
10.獲取每分鍾的請求數量,輸出成csv文件
cat /usr/local/nginx/logs/access.log | awk '{print substr($4,14,5)}' | uniq -c | awk '{print $2","$1}' > access.csv
11.獲取最耗時的請求時間、url、耗時,前10名, 可以修改后面的數字獲取更多,不加則獲取全部。
cat /usr/local/nginx/logs/access.log | awk '{print $4,$7,$NF}' | awk -F '"' '{print $1,$2,$3}' | sort -k3 -rn | head -10