nginx日誌檔案切割

2021-09-02 15:46:36 字數 803 閱讀 2438

建立指令碼logcut.sh,放到/opt/nginx/sbin下

在windows下編輯,可以把dos轉unix格式

#!/bin/bash

## 零點執行該指令碼

## nginx 日誌檔案所在的目錄

logs_path=/opt/nginx/logs

## 獲取昨天的 yyyy-mm-dd

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

## 移動檔案

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

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

## 向 nginx 主程序傳送 usr1 訊號。usr1 訊號是重新開啟日誌檔案

kill -usr1 $(cat /opt/nginx/logs/nginx.pid)

(注意nginx.pid路徑,在nginx.conf裡配置)

設定許可權,新增可執行

cd /opt/nginx/sbin

chmod 755 logcut.sh

新增到crontab

crontab -e 編輯crontab,新增如下內容

0 0 * * * /bin/bash /opt/nginx/sbin/logcut.sh > /dev/null 2>&1
後面新增的 > /dev/null 2>&1的意義是把訊息和錯誤輸出到空裝置,不讓系統發郵件

crontab -l 檢視crontab

參考:nginx 日誌檔案切割

nginx 切割日誌檔案

1.首先編寫shell指令碼 cutlog.sh 放入nginx logs資料夾中 首先定義路徑變數 logs path usr local nginx logs 獲取昨天的 yyyy mm dd d date y m d 移動檔案 mv access.log log 向 nginx 主程序傳送 u...

Nginx 日誌檔案切割

阿里雲的nginx好久沒檢視過日誌,現在需要配置定時任務實現,日誌檔案切割,並刪除超過30天的日誌檔案。log.sh 指令碼檔案 bin bash 獲取當前時間 yyyy mm dd hh mm ss 格式 nowtime date y m d h m s cd usr local nginx mv...

nginx日誌切割

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