zoukankan      html  css  js  c++  java
  • Linux nginx日志按天分割实例

    Linux nginx日志按天分割实例

     

    nginx的日志有个小缺点,日志文件一直就是一个,不会自动地进行切割,如果访问量很大的话,将导致日志文件非常大,不便于管理

    这就需要我们自己来实现了,按日期每天生产一个日志文件

    思路

    每天零点把默认日志文件改名为当天日期,再重新打开新的日志文件

    使用定时任务来执行脚本,脚本中执行改名和重新打开日志文件的操作

    向Nginx主进程发送 USR1 信号,就可以重新打开日志文件


    实现

    #/bin/bash

    #备份日志的路径
    bakpath='/home/nginx/logs'

    #nginx日志路径
    logpath='/usr/local/nginx/logs'

    #在备份路径下创建年月子目录
    mkdir -p $bakpath/$(date +%Y)/$(date +%m)

    #移动日志文件到备份路径,并改名为日期格式
    mv $logpath/access.log $bakpath/$(date +%Y)/$(date +%m)/access.$(date +%Y%m%d).log

    mv $logpath/error.log $bakpath/$(date +%Y)/$(date +%m)/error.$(date +%Y%m%d).log

    #用 USR1 信号让nginx重新打开日志文件
    kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`

  • 相关阅读:
    Codeforces 691A Fashion in Berland
    HDU 5741 Helter Skelter
    HDU 5735 Born Slippy
    HDU 5739 Fantasia
    HDU 5738 Eureka
    HDU 5734 Acperience
    HDU 5742 It's All In The Mind
    POJ Euro Efficiency 1252
    AtCoder Beginner Contest 067 C
    AtCoder Beginner Contest 067 D
  • 原文地址:https://www.cnblogs.com/jun1019/p/6260606.html
Copyright © 2011-2022 走看看