您的位置:首页 > 运维架构 > Nginx

nginx 日志文件分割

2010-04-12 16:30 465 查看
因为nginx自身不带日志分割的功能 所以我们用shell脚本来完成这一任务
1.首先我来说明下nginx的主进程号:
如果nginx.conf 配置文件中使用了"pid /usr/local/nginx/nginx.pid;"指定了pid文件的存放路径,我们可以通过more这个pid文件来获得nginx的主进程号,或者使用
ps -ef | grep nginx 查看



2.如果想每天定时切割日志,还需配置crontab.
3.创建一个shell脚本



4.配置crontab每天凌晨00:00 定时执行这个脚本
#crontab -e



5.讲解下这个脚本的意思



这个shell脚本和crontab配置主要实现的功能为:假设今天的日期为2010年4月11日,nginx当前的日志文件为/home/logs/a.log,2010年4月12日00:00 会执行fenge.sh脚本,
脚本首先创建一个目录/home/logs/2010/04/,让后将/home/logs/a.log 文件移动并重命名为/home/logs/2010/04/access_20100411.log,在发送kill -USR1 '主进程号' 信号给nginx重新生成一个/home/logs/a.log文件,2010年4月12日的日志记录在这个新生成的日志文件中.而home/logs/2010/04/access_20100411.log文件,就是2010年4月11日的日志文件.

本文出自 “mcshell学习博客” 博客,请务必保留此出处http://mcshell.blog.51cto.com/803455/294208
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: