linux統計nginx日志中請求訪問量命令


Nginx 三種分配策略:輪詢、權重、ip_hash(比如你登錄了一個網站,登錄信息已經保存到 a 機器,但當你做后續操作時的請求會到 b 機器,那么就獲取不到你原來登錄的信息,此時你就需要重新登錄了。這樣的情況是用戶肯定不能接受的,ip_hash 模式就可以很好地解決這個問題,讓每次訪問能基於同一用戶訪問固定的服務器。)

nginx日志存放路徑:nginx.conf 

awk 常用參數是 -F 指定分隔符。

sed 常用的參數有:

a 表示新增;

i 表示插入;

c 表示取代;

d 表示刪除。

Sort 的默認方式就是把第一列根據 ASCII 值排序輸出。常用參數有:

-n,依照數值的大小排序;

-r,以相反的順序來排序;

-k,選擇以某個區間進行排序。

uniq 用於檢查或者統計文本出現的重復行,常用參數是 -c,它用於連續重復行次數的統計。

 


cat access.log |awk'{print $7}'|sort|uniq -c|sort -n -k -r

這個命令,是提取 acccess.log 的第 7 列,也就是接口路徑:

先 sort 排序,這樣可以將相同的接口訪問路徑合並一起;

再使用 uniq -c 統計連續訪問的次數;

最后根據訪問次數排序,便可以得到如下結果。

 

 cat access.log |awk '{print $7}'|sort|uniq -c|sort -n -k 1 -r

  87280 /hello/list

  18892 /hello/map

  12846 /v1/login

通過輸出結果可以看出第一列就是給定日志內的接口訪問次數統計,比如 87280 就是 /hello/list 的訪問次數。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM