Nginx Java 日志切割脚本
Nginx日志切割脚本:
#!/bin/bash #############################################################################
logs_path="/usr/local/nginx/logs"
pid_path="/var/run/nginx.pid"
backup_dir="/data/log/nginx"
[ ! -d $backup_dir ] && mkdir -p $backup_dir
mv ${logs_path}/access.log ${backup_dir}/access_$(date -d "yesterday" +"%F").log gzip ${backup_dir}/access_$(date -d "yesterday" +"%F").log && echo "nginx log sucess" kill -USR1 `cat ${pid_path}`
Java日志切割脚本:
#!/bin/bash
#This script run at 00:03 in cron
logs_path="/usr/local/tomcat7/logs"
logs_dir="/data/log/tomcat/"
logdate=`date -d "yesterday" +"%Y-%m-%d"`
for i in $logs_path
do
echo "...................", $i
Hostname=`hostname`
yesterday=`date -d "yesterday" +"%Y%m%d"`
[ ! -e ${logs_dir}$(date +"%Y%m") ] && mkdir -p $logs_dir$(date +"%Y%m")
cat $i/catalina.out > $logs_dir$(date +"%Y%m")/catalina.out_"$Hostname"_"$yesterday".log
cat $i/localhost_access_log.$logdate.txt > $logs_dir$(date +"%Y%m")/localhost_access_log_"$Hostname"_"$yesterday".log echo ""> $i/catalina.out
cd $logs_dir$(date +"%Y%m") && gzip catalina.out_"$Hostname"_"$yesterday".log && echo "java gzip sucess..." done
2.一台机器上面跑两个tomcat应用的日志切割方法:
####################################################################################### #!/bin/bash
#This script run at 00:03 in cron
#####################################################################################
logs_path="/usr/local/tomcat-App1/logs/ /usr/local/tomcat-App2/logs"
logs_dir="/data/log/tomcat/"
logdate=`date -d "yesterday" +"%Y-%m-%d"`
pro="App1 App2"
for i in $logs_path
do
echo "...................", $i
Hostname=`hostname`
yesterday=`date -d "yesterday" +"%Y%m%d"`
[ ! -e ${logs_dir}$(date +"%Y%m") ] && mkdir -p $logs_dir$(date +"%Y%m")
for m in $pro
do
cat $i/catalina.out > $logs_dir$(date +"%Y%m")/cata_"$m"_"$Hostname"_"$yesterday".log
cat $i/localhost_access_log.$logdate.txt > $logs_dir$(date +"%Y%m")/localhost_access_"$m"_"$Hostname"_"$yesterday".log
done
done
echo ""> $i/catalina.out
cd $logs_dir$(date +"%Y%m") && gzip cata_*_"$Hostname"_"$yesterday".log && echo "java gzip sucess..."
加入定时任务:
*/59 * * * * /usr/sbin/ntpdate cn.pool.ntp.org>/dev/null 2>&1
0 0 * * * /bin/sh /opt/bin/crontab/cronolog.sh 2>&1
10 0 * * * /bin/sh /opt/bin/crontab/nginx_log.sh /dev/null 2>&1
Nginx Java 日志切割脚本的更多相关文章
- nginx 的日志切割
nginx的日志切割脚本 说明:在nginx的配置文件中nginx.conf并没有定义access_log的位置, 在/usr/local/nginx/conf/vhost/下的配置文件中定义了acc ...
- nginx学习笔记(四)-----日志切割脚本及定时任务
一.日志切割脚本 #!/bin/sh #nginx目录 BASE_DIR=/usr/local/nginx #生成的日志 BASE_FILE_NAME=jonychen.access.log CURR ...
- mongo日志切割脚本
两种mongo日志切割脚本 vim /etc/logrotate.d/mongodb /home/mongodb/mongolog/mongod.log { daily rotate 7 compre ...
- Nginx定时日志切割
Nginx定时日志切割 现有的日志都会存在access.log文件中,但是随着时间的推移,这个文件的内容会越来越多,体积会越来越大,不便于运维 人员查看,所以我们可以通过把这个大的日志文件切割为多份不 ...
- linux shell:nginx日志切割脚本
需求原因:nginx不具备日志切割功能,日志量较大,方便分析. 实现目的:完成nginx日志切割,并根据时间命名 简要命令: mv /usr/local/tengine/logs/access.l ...
- Nginx log日志切割shell
#!/bin/bash#此脚本用于自动分割Nginx的日志,包括access.log和error.log#每天00:00执行此脚本 将前一天的access.log重命名为access-xxxx-xx- ...
- nginx的日志切割
nginx日志默认情况下统统写入到一个文件中,文件会变的越来越大,非常不方便查看分析.以日期来作为日志的切割是比较好的,通常我们是以每日来做统计的.下面来说说nginx日志切割. 如果我们使用的是yu ...
- nginx日志切割脚本
#!/bin/bash ip=`ifconfig eth0 | grep "inet addr" | cut -f 2 -d ":" | cut -f 1 -d ...
- nginx 日志切割脚本
#!/bin/shLOG_PATH=/home/test/nginx/logsNEW_LOG_PATH=/home/test/nginx/dayslogNGING_PID=$(cat /home/te ...
随机推荐
- 一道搜索题【2013 noip提高组 DAY2 t3】华容道
这篇不多说,具体的解释都在程序里 题目描述 [问题描述] 小 B 最近迷上了华容道,可是他总是要花很长的时间才能完成一次.于是,他想到用编程来完成华容道:给定一种局面, 华容道是否根本就无法完成,如果 ...
- LabVIEW中下拉列表和枚举的区别(两点)
第一:如图,在表示法上,下拉列表表示的数据范围要大,枚举只能是U32,U16, U8 第二:在vi的动态调用过程中,常用下拉列表,因为枚举控件不能动态的增加或者减少项目,而下拉列表则可以.
- unit test
1) State vs Behaviour Verificationhttps://manas.tech/blog/2009/04/30/state-vs-behaviour-verification ...
- 前端 ---JS中的面向对象
JS中的面向对象 创建对象的几种常用方式 1.使用Object或对象字面量创建对象 2.工厂模式创建对象 3.构造函数模式创建对象 4.原型模式创建对象 1.使用Object或对象字面量创建对象 ...
- Tp5自动验证
<?php class DB { private $address = 'mysql.21future.com'; private $username = 'manbang'; private ...
- ORACLE透明加密
--官网文档:https://www.oracle.com/technetwork/cn/tutorials/tde-096009-zhs.html#t概述Oracle 数据库 10g 第 2 版透明 ...
- 关于main函数的参数问题
我们经常用的main函数都是不带参数的.因此main 后的括号都是空括号.实际上,main函数可以带参数,这个参数可以认为是 main函数的形式参数.C语言规定main函数的参数只能有两个, 习惯上这 ...
- iOS UIDatePicker设置为中文的方法
UIDatePicker *datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 20, 200, 30)]; datePick ...
- restricted 模式及其 使用
什么是数据库的RESTRICTED 模式 注:以下内容来至:百度知道 --数据库受限模式,在这个模式下只有RESTRICTED SESSION 权限的人才可以登陆,一般用与数据库维护的时候使用. RE ...
- Django框架之第二篇
一.知识点回顾 1.MTV模型 model:模型,和数据库相关的 template:模板,存放html文件,模板语法(目的是将变量如何巧妙的嵌入到HTML页面中). views:视图函数 另加urls ...