Nginx 日誌配置 日誌切割

2021-09-27 10:24:33 字數 2750 閱讀 3333

設定error_log

日誌切割

前置文章:nginx 的配置檔案 nginx.conf

nginx日誌對於統計、系統服務排錯很有用。

nginx日誌主要分為兩種:access_log(訪問日誌)和error_log(錯誤日誌)。

通過訪問日誌我們可以得到使用者的ip位址、瀏覽器的資訊,請求的處理時間等資訊。

錯誤日誌記錄了訪問出錯的資訊,可以幫助我們定位錯誤的原因。

因此,將日誌好好利用,可以得到很多有價值的資訊。

在 nginx.conf 檔案裡配置:

access_log path [format [buffer=size]

[gzip[

=level]

][flush=time]

[if=condition]];

#設定訪問日誌

access_log off;

#關閉訪問日誌

示例:

http
access_log指令的作用域分別有http,server,location。

更裡面的設定,會覆蓋外面的設定。

預設的日誌格式

;各引數明細表:

顯示最新追加的日誌:

tail -f /usr/local/nginx/logs/access.log

錯誤日誌在nginx中是通過error_log指令實現的。該指令記錄伺服器和請求處理過程中的錯誤資訊。

錯誤日誌不支援自定義。

error_log path [level]

;

示例:

error_log  logs/error.log; 

error_log logs/error_notice.log notice;

error_log logs/error_info.log info;

##可以將不同的錯誤型別分開儲存

測試,按分鐘切割

可以在 conf 目錄下vim logcut.sh

#!/bin/bash

#設定日誌檔案存放目錄

log_home=/usr/local/nginx/logs/

#備分檔名稱

log_path_bak=

"$(date -d "last_minute" +%y%m%d%h%m)

"#重新命名日誌檔案,mv 會刪除原檔案,導致日誌丟失,因為nginx不會自己去再建立乙個日誌檔案

mv$/host.access.log $/access.$.log

mv$/error.log $/error.$.log

#向 nginx 主程序傳送 usr1 訊號。nginx 裡 usr1 訊號是重新開啟日誌檔案

kill -usr1 `

cat $/nginx.pid`

chmod u+x logcut.sh配置cron:

crontab -e

*/1 ***

*/usr/local/nginx/conf/logcut.sh

#分/1 時 日 月 年

進入 logs 資料夾:

按日切割

在 conf 目錄下vim logcut.sh

#!/bin/bash

#設定日誌檔案存放目錄

log_home=/usr/local/nginx/logs/

#備分檔名稱

log_path_bak=

"$(date -d "yesterday" +%y%m%d)

"#重新命名日誌檔案,mv 會刪除原檔案,導致日誌丟失,因為nginx不會自己去再建立乙個日誌檔案

mv$/host.access.log $/access.$.log

mv$/error.log $/error.$.log

#向 nginx 主程序傳送 usr1 訊號。nginx 裡 usr1 訊號是重新開啟日誌檔案

kill -usr1 `

cat $/nginx.pid`

chmod u+x logcut.sh配置cron:

crontab -e

***

/1 *

*/usr/local/nginx/conf/logcut.sh

#分 時 日/1 月 年

nginx 如何配置日誌及切割日誌

remote addr remote user time local request ip位址 請求方式 status body bytes sent 狀態 請求多少位元組 http referer 從哪個頁面進來的 http user agent 使用者 http x forwarded for ...

配置 Nginx 自動切割日誌

第一種方法 mv opt nginx logs access.log opt nginx logs access date y m d log killall s usr1 nginx 使用usr1引數通知nginx程序切換日誌檔案 將以上指令碼內容儲存為檔名為 logcron.sh 存到自定的目錄...

nginx日誌切割

web 訪問日誌 access log 記錄了所有外部客戶端對web伺服器的訪問行為,包含了客戶端ip,訪問日期,訪問的url資源,伺服器返回的http狀態碼等重要資訊。一條典型的web訪問日誌如下 規劃 1 要解決問題 2 nignx沒有自動分開檔案儲存日誌的機制。由於nginx它不會幫你自動分檔...