Nginx下每天分割日志的方法
Ngnix下的日志,默认是一个文件,所有的访问记录都在这里,但日积月累,体积会变的很大,我们可以把这些日志以每天为单位,分割开来,以方便我们查看。
打开日志的方法:http://kzpu.com/?p=681
分割日志的方法:
vi /usr/local/nginx/logs/cut_nginx_log.sh
输入以下代码
#!/bin/bash
# This script run at 00:00# The Nginx logs path
logs_path="/home/www/logs/"
# Nginx logs names here
logs_names=(access nginx_error www.domain.com www.domain2.cc domain3.com)mkdir -p ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/
num=${#logs_names[@]}
for((i=0;i<num;i++));do
mv ${logs_path}${logs_names[i]}.log ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/${logs_names[i]}_$(date -d "yesterday" +"%Y%m%d").log
donekill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
给cut_nginx_log.sh添加权限
chmod +x /usr/local/nginx/logs/cut_nginx_log.sh
启用crontab命令
crontab -e
每天0点分割
00 00 * * * /bin/bash /usr/local/nginx/logs/cut_nginx_log.sh
分割的日志在
/home/www/logs/2010/month/
下面
0.8.42昨天刚刚发布 。。。 更新比较重要。。。
呃,实力派的东东。只能远观~
目瞪口呆