向nginx发送reopen信号以重新打开日志文件
2016-10-24 08:23
2051 查看
先移动日志文件
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重新打开日志文件(重新打开的日志就是配置文件中设置的位置和名称)
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重新打开日志文件(重新打开的日志就是配置文件中设置的位置和名称)
相关文章推荐
- 【SQLServer】【恢复挂起的解决方案】附加文件时候的提示“无法重新生成日志,原因是数据库关闭时存在打开的事务/用户,该数据库没有检查点或者该数据库是只读的。 ”【数据库恢复】
- 若要转换此解决方案,请将此解决方案文件的权限更改为允许修改,然后重新打开它。
- vc工程中打开的时候类视图无法完全显示类解决方案——删除工程所在文件夹中的后缀为ncb的文件,重新打开即可
- nginx(四)初识nginx日志文件
- 定时压缩日志文件并发送到邮箱
- Shell编程笔记(日志文件、信号、trap捕捉信号、eval)
- 数据库日志文件(x.ldf)如何打开?
- nginx源码分析—如何发送信号
- 使用logrotate管理nginx日志文件
- 解决单个日志文件长时间造成太大无法打开日志问题
- Nginx实现大日志文件切割
- 删除VS2008最近打开文件或最近打开项目;重新另存项目的.sln文件
- nginx(四)初识nginx日志文件
- rman复制数据库ORA-01547ORA-01194ORA-01110,强制打开并修改日志文件
- 截取nginx日志文件中,一周内的文件访问次数最多的记录
- 重新修订并发布文件日志类(WIN32 , C++)
- WORD文档打开文件时老提示发送错误报告,或者打印不全
- Nginx 日志文件切割
- Win Server 2008中SqlServer 2008 无法打开错误日志文件导致无法启动的解决方法
- Win2008中SqlServer2008 无法打开错误日志文件导致无法启动的解决方法