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

    nginx-log-rotate.sh

    #!/bin/bash
    #---------------------------------------------
    # Comment:Used for rotating nginx log file.
    # Author: alin
    # Date: 09/27/2018
    # Version: 1.0
    #---------------------------------------------

    LOG_FILE="*.log"
    LOG_DIR=/data/log/nginx
    LOG_SIZE=100
    CURR_TIME=$(date +%Y%m%d%H%M)

    for log in `ls $LOG_DIR/$LOG_FILE`
    do
    total_size=`stat -c %s $log`
    size=$(($total_size/1024/1024))
    if [ $size -gt $LOG_SIZE ]; then
    ############# copy
    back_file_name="$log-$CURR_TIME"
    cd $LOG_DIR
    /usr/bin/cp $log $back_file_name
    echo "" > $log
    ############# zip
    if [[ $log =~ "8bet" ]]
    then
    log_file_dir=`ls $log | awk -F"/" '{print $5}' | awk -F"." '{print $1"."$2}'`
    else
    log_file_dir=`ls $log | awk -F"/" '{print $5}' | awk -F"." '{print $1}'`
    fi
    cd $log_file_dir
    rename=`ls $back_file_name| awk -F"/" '{print $5}'`
    zip -9q $rename".zip" $back_file_name
    ############# rm
    find ./ -mtime +10 -name "*.zip" -exec rm -f {} ;
    cd $LOG_DIR
    rm -f $back_file_name
    else
    echo -e "33[32m[$log is less than 100M!]33[0m"
    fi
    done

    echo -e "33[42mNginx-dir-logfile had been rolled successful!......33[0m"

    nginx-rotate.sh

    #!/bin/bash

    # nginx log partition per size

    LOG_FILE=game-admin.log
    LOG_SIZE=100
    LOG_DIR=/log/nginx
    EXPIRE_DAY=7
    CURR_TIME=$(date +%Y%m%d%H%M)

    total_size=`stat -c %s $LOG_DIR/$LOG_FILE`
    size=$(($total_size/1024/1024))

    if [ $size -lt $LOG_SIZE ]; then
    exit 0
    fi

    # copy log file
    cd $LOG_DIR
    back_file_name="$LOG_FILE-$CURR_TIME"
    cp $LOG_FILE $back_file_name
    echo "" > $LOG_DIR/$LOG_FILE

    # zip
    zip -9q "${back_file_name}.zip" ${back_file_name}
    rm -f ${back_file_name}

    echo "Nginx log rolling success! file: ${back_file_name}.zip"

  • 相关阅读:
    css3回顾 checkbox
    mysql在linux下的安装
    LNMP(linux+nginx+mysql+php)服务器环境配置
    linux下如何查看某软件是否已安装
    Linux查看系统信息的一些命令及查看已安装软件包的命令
    正确配置nginx和php
    服务器搭建:手把手教你配置web服务之nginx1
    搭配环境一(手动搭建,重要!!)
    安装配置nginx
    nginx配置参数中文详解
  • 原文地址:https://www.cnblogs.com/immense/p/11402869.html
Copyright © 2011-2022 走看看