1.nginx_log_rotate.s**件
#nginx日誌切割指令碼#author: joshau317
#!/bin/bash#1
.設定日誌檔案存放目錄,假設你的nginx的日誌存在這個目錄裡
logs_path="
/data/logs/nginx/"#
2.設定pid檔案,這個根據你自己的環境,找到nginx.pid所在目錄
pid_path="
/usr/local/nginx/logs/nginx.pid"#
3.建立分割儲存的日期檔案目錄
datetime=`date -d "
yesterday
" +"
%y%m%d"`;
new_log_path=$logs_path$datetime
mkdir -p $new_log_path#4
.按照日期移動所有該目錄下的日誌檔案
log_file_list=`ls -l $logs_path`;
for log_file in
$log_file_list;
dolog_file_name=$logs_path$log_file;
if [ -f $log_file_name ];
then
mv$log_file_name $new_log_path;
fidone
#5.向nginx主程序發訊號重新開啟日誌
kill -usr1 `cat $`
2.設定定時任務
00 * * * /data/sh/nginx_log_rotate.sh
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...