• nginx日志增长过快定时计划日志管理

  • 发布时间:2016-01-13 12:33 | 作者:yc | 来源:互联网 | 浏览:1200 次
  • nginx日志增长过快定时计划日志管理

    这两天要对nginx日志进行切开,在网上看到的都是在零点中止nginx,然后将access.log日志改名,再发动nginx,没有对前史日志进行分袂,并且我对中止nginx效劳再发动也不是很伤风,以是自个写了个按日期切开前史日志的脚本

    我的思路是:先将某天日志grep导出,再用sed -i删去是日的日志,对日志瘦身……

    可是碰着了个问题是,sed -i瘦逝世后的access.log文件不再增大年夜……

    以是十分无法的终极加了个重启nginx

    期望有兄弟奉告我为何日志文件不再添加,致使必然要重启nginx

    1>vi /usr/local/webserver/nginx/logs/cut_nginx_log.sh

    nginx日志增长过快定时计划日志管理#!/bin/bash

    #function:cut nginx log files for lnmp

    #author: http://lnmp.org

    #set the path to nginx log files

    log_files_path="/usr/local/webserver/nginx/logs/"

    log_files_dir="/usr/local/webserver/nginx/logs/old/"

    #set nginx log files you want to cut

    log_fiwww.sss988.comles_name="access.log"

    save_days=30

    mkdir -p ${log_files_dir}

    ############################################

    #Please do not modify the following script #

    ############################################

    cp ${log_files_path}${log_files_name} ${log_files_path}${log_files_name}_bak

    #轮回天生删去十月3号到12号的旧日志,

    #for((i=3;i${log_files_dir}www_access_${date_l}.log

    #sed -i /${date}/d ${log_files_path}${log_files_name}

    #done

    #11/Oct/2015昨日日期

    date_g=$(date -d last-day +"%d/%b/%Y")

    #昨日日期

    date_l=$(date -d last-day +"%Y%m%d")

    #11\/Oct\/2015昨日日期

    date=$(date -d last-day +"%d\/%b\/%Y")

    cat ${log_files_path}${log_files_name} | grep ${date_g} >${log_files_dir}www_access_${date_l}.log

    sed -i /${date}/d ${log_files_path}${log_files_name}

    #de九五至尊3网站多少lete 30 days ago nginx log files

    find ${log_files_dir} -mtime +${save_days} -exec rm -rf {} \;

    #重启nginx效劳,不然不知道为何,日志不再增添

    /usr/local/webserver/nginx/sbin/nginx -s reload

    2>chmod 777 /usr/local/webserver/nginx/logs/cut_nginx_log.sh#运转的权限

    3>crontab -e

    尾部追加:

    0 4 * * * /usr/local/webserver/nginx/logs/cut_nginx_log.sh

    4>crontab -l#反省是不是成功

    这篇文章出自 “喵呜” 博客,请必须保存此出处http://aijinnini.blog.51cto.com//

  • 相关内容

友情链接: