1. 程式人生 > >Nginx之——日誌按日期分割的實現(基於CentOS操作系統)

Nginx之——日誌按日期分割的實現(基於CentOS操作系統)

重新 mod local 操作系統 pan ron nginx日誌 chmod auto

Nginx自身是沒有按日期切割日誌的功能,可以用shell腳本實現。新建一個cut_log.sh,

#!/bin/sh
# Program:
#     Auto cut nginx log script.
 
# nginx日誌路徑 
LOGS_PATH=/usr/local/nginx/logs
TODAY=$(date -d today +%Y-%m-%d)
 
# 移動日誌並改名
mv ${LOGS_PATH}/error.log ${LOGS_PATH}/error_${TODAY}.log
mv ${LOGS_PATH}/access.log ${LOGS_PATH}/access_${TODAY}.log
 
# 向nginx主進程發送重新打開日誌文件的信號
kill -USR1 $(cat /usr/local/nginx/logs/nginx.pid)

然後給上面的腳本授權

chmod u+x cut_log.sh

然後是加到定時任務中

crontab -e

0 0 * * * bash /usr/local/nginx/logs/cut_log.sh

Nginx之——日誌按日期分割的實現(基於CentOS操作系統)