码迷,mamicode.com
首页 > 其他好文 > 详细

向nginx发送reopen信号以重新打开日志文件

时间:2016-10-24 09:33:15      阅读:540      评论:0      收藏:0      [点我收藏+]

标签:linux系统   日志文件   进程   自己   cat   名称   而在   log   linu   

先移动日志文件

mv /usr/local/openresty/nginx/logs/access.log /usr/local/openresty/nginx/logs/access.log.20161024

发送信号重新打开日志文件

kill -USR1 $(cat /usr/local/openresty/nginx/logs/nginx.pid)

简单说明一下:

1、在没有执行kill -USR1 `cat ${pid_path}`之前,即便已经对文件执行了mv命令也只是改变了文件的名称,nginx还是会向新命名的文件” access.log.20161024”中照常写入日志数据。原因在于linux系统中,内核是根据文件描述符来找文件的

2、USR1是自定义信号,也就是进程编写者自己确定收到这个信号该干什么。而在nginx中它自己编写了代码当接到USR1信号的时候让nginx重新打开日志文件(重新打开的日志就是配置文件中设置的位置和名称)

向nginx发送reopen信号以重新打开日志文件

标签:linux系统   日志文件   进程   自己   cat   名称   而在   log   linu   

原文地址:http://www.cnblogs.com/kgdxpr/p/5991702.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!