nginx日誌切割

2021-09-21 07:19:35 字數 505 閱讀 1956

利用crontab+指令碼可以定期的切割nginx日誌

以每天切割nginx日誌為例:

指令碼:

#!/bin/bash

#定時切割nginx日誌

logs_path=/usr/local/nginx/logs

mv $logs_path/access.log $logs_path/`date +%f -d -1day`_access.log #注意此處要寫絕對路徑

kill -usr1 $(cat /usr/local/nginx/logs/nginx.pid) #usr1訊號是重新開啟日誌檔案,等於nginx -s reload

crontab:

[root@server1 logs]# crontab -l

0 0 * * * sh /usr/local/nginx/logs/log.sh

注意:指令碼+crontab的方式一定要注意指令碼的所有路徑變數都要為絕對路徑

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...