zoukankan      html  css  js  c++  java
  • 用crontab定时分隔nginx日志文件

    1.创建/data/cut_nginx_logs.sh

    #!/bin/bash
    #function:cut nginx log files
    #author: http://lnmp.org
    
    #set the path to nginx log files
    log_files_path="/data/wwwlogs/"
    log_files_dir=${log_files_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")
    #set nginx log files you want to cut
    log_files_name=(a.domain.com b.domain.com)
    #set the path to nginx.
    nginx_sbin="/usr/sbin/nginx"
    #Set how long you want to save
    save_days=30
    
    ############################################
    #Please do not modify the following script #
    ############################################
    mkdir -p $log_files_dir
    
    log_files_num=${#log_files_name[@]}
    
    #cut nginx log files
    for((i=0;i<$log_files_num;i++));do
            mv ${log_files_path}${log_files_name[i]}.log ${log_files_dir}/${log_files_name[i]}_$(date -d "yesterday" +"%Y%m%d").log
    done
    
    #delete 30 days ago nginx log files
    find $log_files_path -mtime +$save_days -exec rm -rf {} ;
    
    $nginx_sbin -s reload

    2. 增加执行权限 

    chmod +x /data/cut_nginx_logs.sh

    3.修改/etc/crontab文件,以最后面加上以下代码,表示每天0点0分执行脚本 /data/cut_nginx_logs.sh

    0 0     * * *   root    /data/cut_nginx_logs.sh
  • 相关阅读:
    加载页面遮挡耗时操作任务页面--第三方开源--AndroidProgressLayout
    【数据库】SQLite学习
    【数据库】MongoDB学习
    【英语】Bingo口语笔记(8)
    【英语】TED视频笔记
    自动关联
    HTML和URL比较
    LR回放测试脚本
    LR录制脚本IE不能打开解决方法
    LR录制测试脚本
  • 原文地址:https://www.cnblogs.com/builderman/p/cut_nginx_logs.html
Copyright © 2011-2022 走看看