1. 程式人生 > >Linux筆記(66)——nginx日誌檔案詳解

Linux筆記(66)——nginx日誌檔案詳解

                       

日誌檔案格式

開啟nginx預設的配置檔案nginx.conf

這裡寫圖片描述

我們使用log_format指令來指定日誌檔案的格式,以$開頭的都是變數,這些變數的含義如下:

  1. $remote_addr 與$http_x_forwarded_for 用以記錄客戶端的ip地址;
  2. $remote_user :用來記錄客戶端使用者名稱稱;
  3. $time_local : 用來記錄訪問時間與時區;
  4. $request : 用來記錄請求的url與http協議;
  5. $status : 用來記錄請求狀態;成功是200,
  6. $body_bytes_s ent :記錄傳送給客戶端檔案主體內容大小;
  7. $http_referer :用來記錄從那個頁面連結訪問過來的;
  8. $http_user_agent :記錄客戶端瀏覽器的相關資訊;

然後我們通過access_log指令來指定日誌檔案的位置

上圖中紅框中的變數可以自行定義

如要上述配置起作用,去掉前面的#號

如要關閉日誌功能,使用access_log off

日誌檔案切割

為了便於管理,我們經常要按照時間將日誌分開,例如每天一個日誌檔案,那麼該怎麼做呢?

手動切割

進入logs目錄,將access.log重新命名

mv access.log 2016-3-4.log
   
  • 1

重新命名後,nginx就找不到日誌檔案了,因此我們使用kill命令傳一個訊號給nginx的主程序,讓它重新開啟日誌

檢視官方文件,找到了重開日誌的訊號

這裡寫圖片描述

使用kill命令

這裡寫圖片描述

那麼nginx就重開日誌了

自動切割

我們可以將上述操作寫成一個指令碼,然後使用crontab來定時每天按時執行這個指令碼進行日誌切割,那麼自動切割就完成了。

           

再分享一下我老師大神的人工智慧教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!https://blog.csdn.net/jiangjunshow