zoukankan      html  css  js  c++  java
  • Nginx日志切割案例讲解,Nginx的知识讲解

    Nginx 是一个非常轻量的 Web 服务器,体积小、性能高、速度快等诸多优点。但不足的是也存在缺点,比如在产生的访问日志文件一直就是一个,不会自动地进行切割,如果访问量很大的话,将会导致日志文件容量非常大,不便于管理。当然了,我们也不希望看到这么庞大的一个访问日志文件,那需要手动对这个文件进行切割。

    如果访问日志非常大,不便于我们每天查看相关的网站异常日志。

    在 Linux 平台上 Shell 脚本丰富,使用 Shell 脚本加 crontab 命令能非常方便地进行切割。

    今天我将跟大家一起来写一个企业环境中使用的Nginx自动切换脚本。

    脚本的功能,就是定时切割日志,这里切割的方法我们直接使用mv即可。

    直接上脚本内容如下:

    #!/bin/bash

    #auto mv nginx log shell

    #by author wugk

    S_LOG=/usr/local/nginx/logs/access.log

    D_LOG=/data/backup/`date +%Y%m%d`

    echo -e "33[32mPlease wait start cut shell scripts...33[1m"

    sleep 2

    if [ ! -d $D_LOG ];then

            mkdir -p  $D_LOG

    fi

    mv $S_LOG  $D_LOG

    kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`

    echo "-------------------------------------------"

    echo "The Nginx log Cutting Successfully!"

    echo "You can access backup nginx log $D_LOG/access.log files."

    执行如下图:

     

    最后在crontab中添加如下代码即可,每天晚上自动去切割日志:

    0          0  * * *

    /bin/sh /data/sh/auto_nginx_log.sh  >>/tmp/nginx_cut.log 2>&1

  • 相关阅读:
    springboot 的常用操作
    springboot 项目中注解的基本使用
    springboot中starters 提供的常用的依赖
    在搭建Springboot的项目 之前 maven 的基本的配置
    国际区号+手机号正则校验
    java实现Multipart/form-data
    Thumbnailator压缩图片
    Spring框架整合多数据源 Mysql+oracle
    微信支付body中文乱码的情况
    el表达式的值里面带单双引号的情况
  • 原文地址:https://www.cnblogs.com/linuxx/p/8032369.html
Copyright © 2011-2022 走看看