博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nginx日志切割简介
阅读量:4185 次
发布时间:2019-05-26

本文共 603 字,大约阅读时间需要 2 分钟。

1、简介

     nginx日志如果你不及时处理,日志文件将变得越来越大,为此可以写一个nginx日志切割脚本来自动切割日志文件。

2、方法

    脚本如下:

    #!/bin/bash

    #设置日志文件存放目录
    logs_path="/usr/local/nginx/logs/"
    #设置pid文件
    pid_path="/var/run/nginx.pid"
    #重命名日志文件
    mv ${logs_path}access.log ${logs_path}access_$(date -d "yesterday" +"%Y%m%d").log
    #向nginx主进程发信号重新打开日志
    kill -USR1 `cat ${pid_path}`

    第一步就是重命名日志文件,不用担心重命名后nginx找不到日志文件而丢失日志。在你未重新打开原名字的日志文件前,nginx还是会向你重命名的文件写日志,linux是靠文件描述符而不是文件名定位文件。

    第二步向nginx主进程发送USR1信号。
nginx主进程接到信号后会从配置文件中读取日志文件名称,重新打开日志文件(以配置文件中的日志名称命名),并以工作进程的用户作为日志文件的所有者。
    重新打开日志文件后,nginx主进程会关闭重名的日志文件并通知工作进程使用新打开的日志文件。
    工作进程立刻打开新的日志文件并关闭重名名的日志文件。
    然后你就可以处理旧的日志文件了。

参考文献:

转载地址:http://bmdoi.baihongyu.com/

你可能感兴趣的文章
openstack-instance-high-availability-Evacuate
查看>>
evacuate-instance-automatically
查看>>
pycharm常用设置(keymap设置及eclipse常用快捷键总结)
查看>>
关于在openstack的环境变量.bashrc自定自己简化命令
查看>>
Openstack Heat Project介绍(转)
查看>>
How to Perform an Upgrade from Icehouse to Juno(ice升级到juno)
查看>>
高扩展性网站的50条原则(转)-思维导图
查看>>
解决openstack novnc一段时间后自动挂断登录不上问题,novncproxy dead but pid file exists
查看>>
构建OpenStack的云基础架构:ManageIQ(转)
查看>>
云管理软件 ManageIQ(转)
查看>>
CentOS 7.0,启用iptables防火墙(转)
查看>>
svn忽略ignore文件记住方式(转)
查看>>
web缓存相关知识(转)
查看>>
Understanding Spring MVC Model and Session Attributes
查看>>
Spring MVC中Session的正确用法之我见(转)
查看>>
Spring2.5 访问 Session 属性的四种策略
查看>>
Spring MVC 3.0 深入及对注解的详细讲解(转)
查看>>
ModelMap和ModelAndView的作用(转)
查看>>
DISCUZ浅析之COOKIE篇
查看>>
实战DDD(Domain-Driven Design领域驱动设计:Evans DDD)
查看>>