3
我的nginx日誌文件中的記錄出現故障。 (編輯:通過「亂序」我的意思是按時間順序排列。例如對於2017-02-21 09:13:26的日誌行往往是之前行2017-02-21 09:13:45)也許一定量無序的記錄是可以預料的,因爲它們是在請求完成後記錄的,而不是在收到時記錄的。但是,這是一種更大數量的無序登錄請求,包括對小型靜態文件的已知短(快)請求。nginx日誌出現故障,可能是由於緩衝日誌記錄
這是使用緩衝記錄的已知副作用還是可以改善?
爲了得到更完整的畫面,這裏有一些其他配置PARAMS:
在nginx.conf
:
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
在配置文件中的虛擬主機:
server {
#The backlog parameter matches sysctl net.core.somaxconn setting. Default value is 511 on Ubuntu.
listen 80 backlog=30000;
server_name www.example.com;
access_log /var/log/nginx/access.log main buffer=128k;
error_log /var/log/nginx/error.log;
root /var/www/html/website;
...
}
不太確定爲什麼這是一個問題... – cnst
「失序」是什麼意思?日誌時間戳有時會倒退,還是記錄的URL發生的順序與預期的順序不一致?緩衝不應該影響排序。它只會導致服務器在內存中累積大量消息,以便它們可以通過單個大寫操作推送到日誌文件,這比寫出單個消息更有效。 – ottomeister
@ottomeister我的意思是行不按時間排序,就像你期望日誌文件通常一樣。 – tinkerr