溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何實(shí)現(xiàn)shell統(tǒng)計(jì)pv和uv獨(dú)立ip

發(fā)布時(shí)間:2021-09-30 17:29:59 來(lái)源:億速云 閱讀:119 作者:iii 欄目:開(kāi)發(fā)技術(shù)

本篇內(nèi)容主要講解“如何實(shí)現(xiàn)shell統(tǒng)計(jì)pv和uv獨(dú)立ip”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“如何實(shí)現(xiàn)shell統(tǒng)計(jì)pv和uv獨(dú)立ip”吧!

Nngix輸出的access log文件如下:

日志文件代碼 

代碼如下:

192.168.1.166 - - 119272312 [05/Nov/2011:16:06:59 +0800] "GET /index.html HTTP/1.1" 200 370 "http://192.168.1.201/" "Chrome/15.0.874.106" "-" 
192.168.1.166 - - 119272312 [05/Nov/2011:16:06:59 +0800] "GET /poweredby.png HTTP/1.1" 200 3034 "http://192.168.1.201/" "Chrome/15.0.874.106" "-" 
192.168.1.177 - - 1007071650 [05/Nov/2011:16:06:59 +0800] "GET /favicon.ico HTTP/1.1" 404 3650 "-" "Chrome/15.0.874.106" "-" 
192.168.1.178 - - 58565468 [05/Nov/2011:16:17:40 +0800] "GET / HTTP/1.1" 200 3700 "-" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" "-" 
192.168.1.166 - - 119272312 [05/Nov/2011:16:17:40 +0800] "GET /nginx-logo.png HTTP/1.1" 200 370 "http://192.168.1.201/" "Chrome/15.0.874.106" "-" 
 

PV很簡(jiǎn)單,大致就是統(tǒng)計(jì)某個(gè)URL的訪問(wèn)次數(shù),例如統(tǒng)計(jì)/index.html的訪問(wèn)次數(shù)

代碼如下:

grep "/index.html" /var/log/nginx/access.log –c 

UV呢,我們根據(jù)用戶標(biāo)識(shí)(第四列) ,首先需要字符串截取,使用cut命令,以空格符號(hào)分割,-d “ ”, 再取第四列-f 4,然后這里需要排重,需要使用uniq工具,uniq速度很快,但是基于就近排重,前一個(gè)后一個(gè)一樣會(huì)排重,之間間隔了不一樣的,就不行了,這就必須使用sort工具來(lái)對(duì)標(biāo)識(shí)符進(jìn)行排序,排序后再使用uniq工具就可以達(dá)到目的,之間我們用管道符號(hào)鏈接, 最后再用 wc –l 輸出統(tǒng)計(jì)數(shù)

比如我們統(tǒng)計(jì)訪問(wèn)了/index.html這也頁(yè)面的uv:

代碼如下:

grep "/index.html" /var/log/nginx/access.log | cut –d “ ” –f 4| sort | uniq | wc –l  


獨(dú)立IP:

假設(shè)我們要統(tǒng)計(jì)整站的獨(dú)立IP,那么我們不需要使用 grep來(lái)匹配具體頁(yè)面,只需要使用cat輸出即可:

代碼如下:


cat /var/log/nginx/access.log | cut –d “ ” –f 1 | sort| uniq | wc -l 

到此,相信大家對(duì)“如何實(shí)現(xiàn)shell統(tǒng)計(jì)pv和uv獨(dú)立ip”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI