nginx日誌切割

2021-10-07 13:11:56 字數 900 閱讀 3280

手動日誌切割

conf下編輯shell指令碼cut_my_log.sh

#!/bin/bash 

log_path="/var/log/nginx/"

record_time=$(date -d "yesterday" +%y-%m-%d+%h:%m)

pid=/var/run/nginx/nginx.pid

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

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

#向nginx主程序傳送訊號,用於重新開啟日誌檔案

kill -usr1 `cat $pid`

chmod +x cut_my_log.sh

定時日誌切割

安裝定時任務

yum install crontabs

crontab -e 編輯並且新增一行新的任務

*/1 * * * * /usr/local/nginx/sbin/cut_my_log.sh

重啟定時任務  service crond restart

常用定時任務命令

service crond start

service crond stop

service crond restart

service crond reload

crontab -l檢視當前使用者任務列表

分      時       日      月      星期幾   年(可選)

0-59  0-23  1-31  1-12  1-7         2020/...

每分鐘執行

*/1 * * * *

每日凌晨(23.59)執行

59 23 * * *

每日陵城1點執行

0 1 * * *

nginx日誌切割

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

nginx 日誌切割

直接在nginx配置檔案中,配置日誌迴圈,而不需使用logrotate或配置cron任務。需要使用到 time iso8601 內嵌變數來獲取時間。time iso8601格式如下 2015 08 07t18 12 02 02 00。然後使用正規表示式來獲取所需時間的資料。使用下面的 塊 1 2 3...

Nginx日誌切割

編輯指令碼tianshl tianshl nginx vim nginx log division.sh指令碼內容 bin sh 昨天日期 yesterday date v 1d y m d 日誌目錄 log path usr local var log nginx sdk日誌路徑 sdk path...