nginx定時任務完成日誌切割

2021-09-11 19:55:35 字數 632 閱讀 2706

有時在實際開發中需要記錄nginx日誌,並以每天記錄乙個日誌檔案

當然肯定是需要寫乙個shell指令碼

在nginx目錄下新建乙個目錄  daylog ,新建乙個指令碼檔案log.sh,給log.sh新增可執行許可權 chmod +x log.sh

再在daylog下建立乙個logs資料夾用來放置日誌檔案。

在log.s**件輸入:

#!/bin/bash(必須放在第一行)

#host.access.log日誌是我nginx其中乙個server的日誌,並不是nginx預設的access.log日誌檔案

log_path=/usr/local/nginx/logs/host.access.log

base_path=/usr/local/nginx/daylog/logs

bak=$base_path/$(date -d yesterday +%y%m%d).access.log

mv $log_path $bak

touch $log_path

kill -usr1 cat /usr/local/nginx/logs/nginx.pid

然後linux crontab命令定時每天晚上12點過後執行一次,同樣的思路可以每小時記錄乙個日誌,每分鐘都可以。根據需要

nginx定時任務完成日誌切割

nginx允許針對不同的server做不同的log 有的web伺服器不支援 預設有個main格式的日誌,如 server access log logs a.com.access.log main 要把main格式的注釋去掉 1.date date 檢視時間 date s 2013 09 21 19...

Ngnix的日誌管理和用定時任務完成日誌切割

一 日誌管理 先來看看ngnix的配置檔案的server段 接下來我們解釋一下預設格式的具體意思 log format main remote addr 遠端ip remote user 遠端使用者 time local 訪問時間 request 請求方式 status 狀態302 404 401 ...

nginx定時任務分割日誌

nginx安裝在 usr local資料夾下 1.在nginx根目錄下建立乙個檔案data,儲存指令碼檔案runlog.sh mkdir data vim data runlog.sh 2.在指令碼檔案runlog.sh檔案裡新增如下 的含義是 在logs資料夾下,每天凌晨一點生成乙個昨天的日誌檔案...