通過log分析,使用sort方法統計UV

    在互聯網公司,產品的UV和PV對運營以及產品之後的發展有着很大的作用,通常這些都是運維或者是開發該做的事情,或者使用工具獲得這些,但是作爲測試人員,這也是個鍛鍊我們寫腳本的好的方式
    首先我們看一下日誌內容:
    [ INFO][2018-08-14 18:10:20] [version=2.2.29.0] [cmd=000184] [uid=11136482] [usqbm=220204] [usqlx=2] [method=MainController(109)] [phase=response] [time=8] [status=200]

通過日誌我們能看到日誌中都是有[ ]和空格格式化的。這樣方便我們通過awk進行截取
以下是代碼內容,大家可以自我感受一下,有問題可以回覆。我會給大家解答

#!/bin/sh
#author by dabao

#通過grep獲取log中含有uid的日誌並重定向到另一個文件中
FILE=`grep "uid" /data/server/tomcat-his/logs/catalina.out>>count.log`

#使用wc統計出清洗過的日誌有多少行,這些行數就是PV
PV=`cat $FILE | wc -l`
echo "PV:" $PV

#在通過awk截取出uid,然後通過sort去重,再統計出行數,就是UV
UV=`cat $FILE | awk '{print $5}' | sort -u | wc -l`
echo "UV:" $UV

代碼邏輯很簡單,但是用到了grep、awk、sort比較高級的shell語言,這也是一個很好的把之前老師教的內容用到實際的例子。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章