天天看點

切割Nginx日志的腳本

1、建立腳本 cut_nginx_log.sh

#!/bin/sh

# This script run at 00:00

# The Nginx logs path

logs_path="/usr/local/nginx/logs/"

mkdir -p ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/

mv ${logs_path}access.log ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/access_$(date -d "yesterday" +"%Y%m%d").log

kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`

2、設定crontab,每天淩晨00:00切割nginx通路日志

crontab -e

内容如下:

00 00 * * * sh  /usr/local/nginx/cut_nginx_log.sh

3、測試:運作

轉移的log如下

[root@~ logs]# ll 2011/08/access_20110808.log 

-rw-r--r-- 1 www root 0 Aug  9 10:18 2011/08/access_20110808.log

本文轉自 holy2009 51CTO部落格,原文連結:http://blog.51cto.com/holy2010/634820

繼續閱讀