#!/bin/bash

ip=`ifconfig eth0 | grep "inet addr" | cut -f 2 -d ":" | cut -f 1 -d " "`

desHost=10.124.156.244

Date_yestoday=`date -d "-1 day" +%Y%m%d`
#设置日志文件存放目录
logs_path="/usr/local/nginx/logs/"
#设置pid文件
pid_path="/usr/local/nginx/logs/nginx.pid"
if [[ ${ip} == '10.124.194.252' ]]; then
#log_cut
mv ${logs_path}access.log ${logs_path}/log_bak/nginx1_access_${date_yestoday}.log
mv ${logs_path}error.log ${logs_path}/log_bak/nginx2_error_${date_yestoday}.log
#向nginx主进程发信号重新打开日志
kill -USR1 `cat ${pid_path}`
#10天以前的日志删除
find /usr/local/nginx/logs/log_bak -ctime +10 -name "nginx1_access_201[0-9]*" | xargs rm -f
find /usr/local/nginx/logs/log_bak -ctime +10 -name "nginx1_error_201[0-9]*" | xargs rm -f
elif [[ ${ip} == '10.124.194.250' ]]; then
#重命名日志文件
mv ${logs_path}access.log ${logs_path}/log_bak/nginx2_access_${date_yestoday}.log
mv ${logs_path}error.log ${logs_path}/log_bak/nginx2_error_${date_yestoday}.log
#向nginx主进程发信号重新打开日志
kill -USR1 `cat ${pid_path}`

#10天以前的日志删除
find /usr/local/nginx/logs/log_bak -ctime +10 -name "nginx2_access_201[0-9]*" | xargs rm -f
find /usr/local/nginx/logs/log_bak -ctime +10 -name "nginx2_error_201[0-9]*" | xargs rm -f

nginx日志切割脚本的更多相关文章

  1. linux shell:nginx日志切割脚本

    需求原因:nginx不具备日志切割功能,日志量较大,方便分析. 实现目的:完成nginx日志切割,并根据时间命名   简要命令: mv /usr/local/tengine/logs/access.l ...

  2. nginx 日志切割脚本

    #!/bin/shLOG_PATH=/home/test/nginx/logsNEW_LOG_PATH=/home/test/nginx/dayslogNGING_PID=$(cat /home/te ...

  3. nginx日志切割脚本shell

    nginx-log-rotate.sh: #!/bin/bash#---------------------------------------------# Comment:Used for rot ...

  4. Nginx Java 日志切割脚本

    Nginx日志切割脚本: #!/bin/bash ########################################################################### ...

  5. nginx日志切割并使用flume-ng收集日志

    nginx的日志文件没有rotate功能.如果你不处理,日志文件将变得越来越大,还好我们可以写一个nginx日志切割脚本来自动切割日志文件.第一步就是重命名日志文件,不用担心重命名后nginx找不到日 ...

  6. nginx学习笔记(四)-----日志切割脚本及定时任务

    一.日志切割脚本 #!/bin/sh #nginx目录 BASE_DIR=/usr/local/nginx #生成的日志 BASE_FILE_NAME=jonychen.access.log CURR ...

  7. 编写每天定时切割Nginx日志的脚本

    自动每天定时切割Nginx日志的脚本,很方便很好用,推荐给大家使用.本脚本也是参考了张宴老师的文章,再次感谢张宴老师.1.创建脚本/usr/local/nginx/sbin/cut_nginx_log ...

  8. Nginx访问日志、 Nginx日志切割、静态文件不记录日志和过期时间

    1.Nginx访问日志 配制访问日志:默认定义格式: log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_loc ...

  9. nginx 日志切割(也适用于docker)

    =============================================== 2019/4/6_第2次修改                       ccb_warlock 201 ...

随机推荐

  1. jquery.form.js不能解决连接超时(timeout)的解决方法

    最近在使用jquery.form.js提交包含文件的表单时,碰到了一个问题:当碰上网速较慢时,而我们又设置了timeout时,例如: var options = { timeout: 3000 //限 ...

  2. 《Head First Java》——对象的行为

    类所描述的是 对象知道什么与执行什么! 调用两个参数的方法,并传入两个参数 void go(){ TestStuff t = new TestStuff(); t.takeTwo(12,34); } ...

  3. 【背景建模】SOBS

    SOBS(self-Organizing through artificial neural networks)是一种基于自组织神经网络的背景差分算法,主要是借鉴神经网络的特性,一个网络输入节点,对应 ...

  4. Weinre调试移动端页面

    Weinre是什么 如果我们做的是Cordova(phonegap)或其他hybird应用,当使用到原生功能时候(类似原生请求数据或页面切换时),没办法在PC chrome浏览器调试页面,一旦页面在手 ...

  5. eclipse 常用设置,常用快捷键修改

    eclipse 常用设置,常用快捷键,myeclipse和eclipse类似' 首先打开eclipse的首选项-->搜索 keys' 常用的一些快捷键: Ctrl+1 快速修复(最经典的快捷键, ...

  6. iOS 代理协议

    代理,又称委托代理(delegate),是iOS中常用的设计一种模式.顾名思义,它是把某个对象要做的事情委托给别的对象去做.那么别的对象就是这个对象的代理,代替它来打理要做的事.反映到程序中, 首先要 ...

  7. Android 中的编码与解码

    前言:今天遇到一个问题,一个用户在登录的时候,出现登录失败.但是其他用户登录都是正常的,经过调试发现登录失败的用户的密码中有两个特殊字符: * .#  . 特殊符号在提交表单的时候,出现了编码不一样的 ...

  8. Android 6.0权限全面详细分析和解决方案

    原文: http://www.2cto.com/kf/201512/455888.html http://blog.csdn.net/yangqingqo/article/details/483711 ...

  9. 【代码笔记】iOS-利用图片序列创建动态图片效果

    一,效果图. 二,代码. RootViewController.m - (void)viewDidLoad { [super viewDidLoad]; // Do any additional se ...

  10. iOS中View生命周期与布局

    生命周期 说到view的生命周期一般都是指视图控制器的view生命周期. view的创建:loadView 视图控制器(UIViewController)及其子类,无论是手写代码还是storyboar ...