zoukankan      html  css  js  c++  java
  • nginx日志分割脚本

    此文档只针对linux分割nginx日志

    nginx日志不自动带日志分割功能,需要自己写脚本分割日志,并加入到每日任务中,定期分割、存储、删除日志

    此脚本包括,日志分割、保存、删除、重建日志文件

    #!/bin/bash
    
    #date +%Y%m%d%H%M%S
    YEAR=`date +%Y`
    MONTH=`date +%m`
    DAY=`date +%d`
    HOUR=`date +%H`
    MINUTE=`date +%M`
    SECOND=`date +%S`
    
    #pid path
    pid_path="/portal/software/nginx/logs/nginx.pid"
    #LOG path
    LOGDIR=/portal/software/nginx/logs/back_up_log/
    LOGDIR2=/portal/software/nginx/logs/sotp_error_log/
    
    #  Screening log files
    LOGNAME=`ls /portal/software/nginx/logs/ |grep ".log"`
    #Create the LOGDIR
    #mkdir -p $LOGDIR1
    #mkdir -p $LOGDIR2
    
    #Move the log file to new position, and change the name
    
    for i in ${LOGNAME}
    do
    #LOG name
    LOGFILE=${i}-$YEAR"-"$MONTH"-"$DAY"-"$HOUR$MINUTE$SECOND
    mv -f  /portal/software/nginx/logs/$i ${LOGDIR}/${LOGFILE} && touch /portal/software/nginx/logs/$i
    
    done
    #  reload nginx process
    kill -USR1 `cat ${pid_path}`
    #  remove logs 6 days ago
    /usr/bin/find  $LOGDIR -name "*" -mtime +6 | /usr/bin/xargs rm -f

    加入日常任务

    crontab -e

    00 01 * * * /bin/sh /opt/cronjob/mysql_daily_backup.sh

    注:  前面五项,分别是 分、时、日、月、周  上面意思是每天的晚上一点执行日志分割脚本

    保存后,重启crond任务

    /etc/init.d/crond restart

  • 相关阅读:
    闲置安卓设备搭建Linux服务器实现外网访问
    Flume笔记
    动态规划算法助记
    Hexo 添加Live2D看板娘
    Oracle 助记
    搭建Discuz论坛
    逆向工程(助记)
    PL/SQL Developer连接本地Oracle 11g 64位数据库
    NSOperation的基础
    GCD基础
  • 原文地址:https://www.cnblogs.com/yxqnote/p/11425300.html
Copyright © 2011-2022 走看看