最近,有客戶反應客戶端卡,老闆集合技術人員開會討論,找出慢的緣由,由此產生了分析nginx響應時間,因爲線上環境nginx日誌格式帶上了引號,處理起來有點麻煩,如下是處理過程 html
1、nginx日誌格式 nginx
log_format main ‘$remote_addr – $remote_user [$time_iso8601] 「$request」 ‘
‘$status $body_bytes_sent 「$http_referer」 ‘
‘」$http_user_agent」 「$http_x_forwarded_for」 ‘
‘ 「$upstream_addr」 「$upstream_status」 「$request_time」 ‘; web
2、nginx訪問日誌(/var/log/nginx) ide
12.124.127.44 – – [29/Jul/2014:20:54:20 +0800] 「GET / HTTP/1.1″ 200 211 「-」 「Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)」 「-」 「127.0.0.1:8081″ 「200」 「0.001」
115.29.113.101 – – [29/Jul/2014:20:54:22 +0800] 「GET / HTTP/1.1″ 200 211 「-」 「Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)」 「-」 「127.0.0.1:8081″ 「200」 「0.005」
112.124.127.53 – – [29/Jul/2014:20:56:49 +0800] 「GET / HTTP/1.1″ 200 211 「-」 「Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)」 「-」 「127.0.0.1:8081″ 「200」 「0.002」
112.124.127.44 – – [29/Jul/2014:20:59:20 +0800] 「GET / HTTP/1.1″ 200 211 「-」 「Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)」 「-」 「127.0.0.1:8081″ 「200」 「0.002」
115.29.113.101 – – [29/Jul/2014:20:59:22 +0800] 「GET / HTTP/1.1″ 200 211 「-」 「Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)」 「-」 「127.0.0.1:8081″ 「200」 「0.002」 url
3、分析nginx日誌 spa
3.1打印響應時間而且去除引號 日誌
cat website.access.log| awk ‘{print $(NF)}’ | awk -F 「\」」 ‘{print $2′}>a.txt orm
3.2合併文件,將時間從新補上去 htm
paste -d 」 」 website.access.log a.txt > b.txt 接口
3.3查找響應時間大於1秒的url
結果以下圖