网站地图    收藏   

主页 > 系统 > linux系统 >

Linux下,nginx如何切割访问日志? - Linux操作系统

来源:自学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

添加评论