怎么查看nginx日志

怎么查看nginx日志

通過查看nginx并發連接,我們可以更清除的知道網站的負載情況。Nginx并發查看有兩種方法(之所以這么說,是因為筆者只知道兩種),一種是通過web界面,一種是通過命令,web查看要比命令查看顯示的結果精確一些。

下面介紹這兩種查看方法

No1、通過瀏覽器查看

通過web界面查看時Nginx需要開啟status模塊,也就是安裝Nginx時加上? ? ? ? –with-http_stub_status_module? ?然后配置Nginx.conf,在server點里面加入如下內容

location?/status?{ stub_status?on; access_log?/usr/local/nginx/logs/status.log; auth_basic?"NginxStatus";?}

解析:

Active?connections????//當前?Nginx?正處理的活動連接數。 server?accepts?handledrequests?//總共處理了8?個連接?,?成功創建?8?次握手,總共處理了500個請求。 Reading?//nginx?讀取到客戶端的?Header?信息數。 Writing?//nginx?返回給客戶端的?Header?信息數。 Waiting?//開啟?keep-alive?的情況下,這個值等于?active?-?(reading?+?writing),意思就是?Nginx?已經處理完正在等候下一次請求指令的駐留連接

No2、通過命令查看

#netstat?-n?|?awk?'/^tcp/?{++S[$NF]}?END?{for(a?in?S)?print?a,?S[a]}'

解析:

CLOSED??//無連接是活動的或正在進行 LISTEN??//服務器在等待進入呼叫 SYN_RECV??//一個連接請求已經到達,等待確認 SYN_SENT??//應用已經開始,打開一個連接 ESTABLISHED??//正常數據傳輸狀態/當前并發連接數 FIN_WAIT1??//應用說它已經完成 FIN_WAIT2??//另一邊已同意釋放 ITMED_WAIT??//等待所有分組死掉 CLOSING??//兩邊同時嘗試關閉 TIME_WAIT??//另一邊已初始化一個釋放 LAST_ACK??//等待所有分組死掉

相關文章推薦: ? ? ? ?? 1.php中常見的Nginx日志以及配置的方法 2.怎么分析nginx的錯誤日志相關視頻推薦: ? ? ? ? ?? 1.燕十八nginx精品視頻教程

nginx訪問量統計

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.根據時間段統計查看日志

cat??access.log|?sed?-n?'/14/Mar/2015:21/,/14/Mar/2015:22/p'|more

查找訪問頻率最高的 URL 和次數:

cat?access.log?|?awk?-F?‘^A’?‘{print?$10}’?|?sort?|?uniq?-c

查找當前日志文件 500 錯誤的訪問:

cat?access.log?|?awk?-F?‘^A’?‘{if($5?==?500)?print?$0}’

查找當前日志文件 500 錯誤的數量:

cat?access.log?|?awk?-F?‘^A’?‘{if($5?==?500)?print?$0}’?|?wc?-l

查找某一分鐘內 500 錯誤訪問的數量:

cat?access.log?|?awk?-F?‘^A’?‘{if($5?==?500)?print?$0}’?|?grep?’09:00’?|?wc-l

查找耗時超過 1s 的慢請求:

tail?-f?access.log?|?awk?-F?‘^A’?‘{if($6》1)?print?$0}’

假如只想查看某些位:

tail?-f?access.log?|?awk?-F?‘^A’?‘{if($6》1)?print?$3″|”$4}’

查找 502 錯誤最多的 URL:

cat?access.log?|?awk?-F?‘^A’?‘{if($5==502)?print?$11}’?|?sort?|?uniq?-c

查找 200 空白頁

 cat?access.log?|?awk?-F?‘^A’?‘{if($5==200?&&?$8?《?100)?print?$3″|”$4″|”$11″|”$6}’

查看實時日志數據流

tail?-f?access.log?|?cat?-e

或者

tail?-f?access.log?|?tr?‘^A’?‘|’
sed?-n?'/04/Dec/2015:07:30:53/,/04/Dec/2015:08:30:55/'p?access.log?|?more??查看一段時間的日志
sed?-n?'/08/Dec/2015:15:48:01/,/08/Dec/2015:15:55:59/p'?access.log?>?new.log

更多Nginx相關技術文章,請訪問Nginx教程欄目進行學習!

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享