Nginx 日誌切割

2021-10-04 01:27:38 字數 901 閱讀 2311

日誌切割指令碼

新增定時任務

總結但是對於 nignx 來說,預設nginx不會自動分割日誌,也不支援在配置檔案中使用 cronolog 以及 rotatelogs ( apache支援,因為支援管道傳遞)。要實現nginx的日誌分割,需要通過移動舊日誌、生成新日誌來實現。

將舊日誌重新命名, 自動生成 access.log,過載 nginx 服務即可

[root@fp-21~

]# vim /usr/local/nginx/logs/log_cut.sh

#!/bin/bash

# nginx 安裝路徑

nginx_path=

/usr/local/nginx

# 需要切割的日誌路徑

old_log_path=$nginx_path/logs/access.log

# 切割完成的日誌路徑

new_log_path=$nginx_path/logs

# 切割完成的日誌命名

new_log_name=`date -d "yesterday"

+"%y%m%d"`.log

# 重新命名日誌檔案

/usr/bin/mv $old_log_path $new_log_path/$new_log_name

# nginx 服務過載

$nginx_path/sbin/nginx -s reload

按照生產環境,新增指令碼至定時任務即可

[root@fp-21~

]# crontab -l

# 分 時 日 月 周

0000**

*/bin/sh /usr/local/nginx/logs/log_cut.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...