首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 操作系统 >

Nginx: host.access.log日记切割

2012-09-20 
Nginx: host.access.log日志切割随着几天下来nginx的host.access.log逐渐膨胀.理想的做法就是根据每天进行

Nginx: host.access.log日志切割

随着几天下来nginx的host.access.log逐渐膨胀.

理想的做法就是根据每天进行区分日志文件,如host.access_20120815.log等, 日志保留最近10天的, 超过10天的日志文件则进行删除.

根据上需求进行nginx的日志切割.

1. 脚本nginxcutlogs.sh

[devwqs@rehserver bin]$ more nginxcutlogs.sh#!/bin/bash# 1. move host.access.log to host.access_20120821.loglogs_path="/home/devwqs/nginx/logs/"mv ${logs_path}host.access.log ${logs_path}host.access_$(date -d "yesterday" +"%Y%m%d").logkill -USR1 `cat /home/devwqs/nginx/logs/nginx.pid`# 2. delete all host.access_2012xxxx.log which overtime 10 daysfind ${logs_path} -name 'host.*.log' -type f -mtime +10 -exec rm {} \;

??

2. 使用crontab进行把上述脚本发布到定时任务, 每天凌晨0.01分定时执行nginxcutlogs:

#1. 编辑devwqs的crontab定时任务[devwqs@rehserver bin]$ crontab –e 1 0 * * * sh /home/devwqs/bin/nginxcutlogs.sh#2. 重新启动crontab[devwqs@rehserver bin]$ cd /etc/init.d[devwqs@rehserver init.d]$ sudo ./crond restartStopping crond: [  OK  ]Starting crond: [  OK  ]

?

注意: 一定要把crontab重启: sudo ./crond restart

crontab学习资料:

http://blog.csdn.net/sipsir/article/details/3973713

http://os.51cto.com/art/200512/13558.htm

热点排行