来源:自学PHP网 时间:2015-04-14 11:51 作者: 阅读:次
[导读] 在linux下,我们可以通过crontab,定时把access.log移动到备份目录,同时,发信号USR1给nginx主进程,让其重新生成个日志文件。在进行编写脚本之前,先进行以下假设:日志文件是:/usr/l...
在linux下,我们可以通过crontab,定时把access.log移动到备份目录,同时,发信号USR1给nginx主进程,让其重新生成个日志文件。
在进行编写脚本之前,先进行以下假设:
日志文件是:/usr/local/nginx/logs/access.log
nginx主进程id保存在文件:/usr/local/nginx/logs/nginx.pid
切割后备份文件目录:/usr/local/nginx/logs/bak/
切割详细步骤,请参阅下面操作:
1、创建文件cut_access_log.sh:
vim /.bin/cut_access_log.sh 2、输入文件cut_access_log.sh内容
#! /bin/bash
org_path="/usr/local/nginx/logs/"
dest_path="/usr/local/nginx/logs/bak/"
if [ ! -d "$dest_path" ]; then
mkdir "$dest_path"
fi
mv ${org_path}access.log ${dest_path}access$(date +%Y%m%d).log
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid` 3、保存cut_access_log.sh之后,赋可执行权限
chmod +x /.bin/cut_access_log.sh 4、编写crontab文件:
vim /.cron 5、输入crontab文件内容,并保持
59 23 * * * /bin/bash /.bin/cut_access_log.sh 6、添加到crontab中
crontab /.cron
通过以上六步,如果具有足够的权限话,访问日志会在每天23:59分,进行切割。 摘自 心灵净土的blog |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com