# 開啟linux計畫任務
crontab -e
# 輸入以下**
00 00 * * * /bin/bash /data/web/vhost/log/cutlog.sh
#!/bin/bash
#此指令碼用於自動分割nginx的日誌,包括access.log和error.log
#每天00:00執行此指令碼 將前一天的access.log重新命名為access-***x-xx-xx.log格式,並重新開啟日誌檔案
#nginx日誌檔案所在目錄
log_path=$(cd `dirname $0`; pwd)
#獲取昨天的日期
yesterday=$(date -d "yesterday" +%y-%m-%d)
#獲取pid檔案路徑
pid=/usr/local/nginx/logs/nginx.pid
#分割日誌
mv $/access.log $/access-$.log
mv $/error.log $/error-$.log
#向nginx主程序傳送usr1訊號,重新開啟日誌檔案
kill -usr1 `cat $`
chmod -r 0777 cutlog.sh
注意修改上方指令碼中的相關日誌路徑,以及nginx.pid路徑
nginx 按天分割日誌
nginx預設的日誌是統一寫到 安裝目錄的log下的 訪問日誌是 access.log,錯誤日誌是error.log 而且並沒有提供乙個可配置的地方,對於生產環境,日誌都集中在一塊兒,沒過幾天日誌檔案就可以大到幾個g,只能是使用作業系統的定時任務,自己寫指令碼定時執行,將log日誌進行切割。定義日誌...
nginx日誌按日期分割
bin bash 零點執行該指令碼 nginx日誌檔案所在的目錄 logs path 日誌資料夾路徑 獲取昨天的yyyy mm dd yesterday date d yesterday y m d 移動檔案 mv access.log access log 向nginx主程序傳送usr1訊號,us...
Nginx日誌按日期分割
原創 nginx是沒有以日期格式作為檔名來儲存的,也就是說,nginx不像tomcat,每天自動生成乙個日期檔案,所有的日誌都是以乙個名字來儲存,時間久了日誌檔案會變得很大。這樣非常不利於分析。雖然nginx沒有這個功能但我們可以寫乙個小指令碼配合計畫任務來達到這樣的效果。即讓nginx每天產生乙個...