shell之tomcat日志备份

#!/bin/bash
BACKDIR=/backup/logs/`date +%F`
CATDIR=/home/tomcat/apache-tomcat/logs
BACKFILE=`find $CATDIR -type f -mtime +3|grep -v catalina.out`
CESHI=`echo $BACKFILE|wc -l`
LOGFILE=/home/lichuang/backup.log
Backup (){
if [ $CESHI -le 1 ]
then
  echo ========`date +%F`======= >>$LOGFILE
  echo $BACKFILE >>$LOGFILE
  exit 0
else
  mkdir -p $BACKDIR
  mv -f $BACKFILE $BACKDIR >>$LOGFILE
  if [ $? -eq 0 ]
  then
    tar zcf $BACKDIR.tar.gz $BACKDIR
    echo ===`date +%F` BACKUP_OK===>>$LOGFILE
    sleep 3
    rm -fr $BACKDIR
  fi
fi
}
Backup
时间: 2024-10-26 02:01:53

shell之tomcat日志备份的相关文章

自动清除过期的Tomcat日志的shell脚本

(友好提示:本文属于初级shell编程,高手可忽略此文) 在产品环境运行过程中,每天会切割产生按天计的日志文件,这些日志文件一般在过一定期限以后就没什么用处了,因此需要定期删除掉这些过期的日志文件.本文以CentOS下的Tomcat为应用环境基础,通过shell脚本的方式定时自动删除过期的Tomcat日志文件,以减少磁盘空间的占用.减轻管理员的日常工作. 一.shell脚本代码: #!/bin/bash # # filename: clearExpiredTomcatLogs.sh # # FU

Shell脚本实现 tomcat 日志定时切割

日志切割的意义: 在生产环境中,当我们使用tomcat服务时,如果用户量过多,有没有日志切割,将会产生很大的日志,一天的日志都能有好几个G大小.当我们需要查看日志记录时,非常麻烦.因此,日志切割是很有必要的! 1.编写shell脚本 vim fengelog.sh #脚本声明 #!/bin/bash . /etc/profile . ~/.bash_profile #定义日志文件目录 applog_path=/usr/local/apache-tomcat-app/logs sapplog_pa

使用shell实现mysql自动全备、增备&日志备份

数据库热备脚本: vim backup.sh #!/bin/sh time=`date "+%Y%m%d_%H%M%S"` host=`hostname` week=`date +%w` monitor="/home/mysql/monitor/mysql_hotbackup_status.txt" ##zabbix监控文件 time_start=`date +%s` n=0 ###要周几做全备,周日是0,周一到周六依次为1~6 function check_sta

tomcat 日志切割shell脚本

vim tomcat_cut.sh #!/bin/bash log_path=/opt/tomcat8080/logs d=`date +%Y-%m-%d` d4=`date -d'30 day ago' +%Y-%m-%d` cd ${log_path} && cp catalina.out $log_path/catalina.out.$d.log echo > catalina.out rm -rf $log_path/catalina.out.${d4}.log # chmo

使用Shell脚本批量给tomcat日志打包压缩并清理

因生产环境的tomcat日志太多,需要做自动化清理,只留90内的,所以90天以外的就直接删除了,90内的就要用脚本批量打包再删除原文件 脚本如下: [[email protected]] # cat for.sh #!/bin/bash tomcat_log=/usr/local/tomcat/logs access_log=localhost_access_log for (( i=74; i>6; i-- )) do dates=`date +"%Y-%m-%d" -d &q

Linux系统使用logrotate进行日志备份

Linux系统上日志文件很多很多,系统日志message mail cron 等等以及应用程序的日志和访问日志,在大量的访问下,这些日志文件会飞速增长,占用大量私盘空间,同时消耗IO,目前线上使用shell脚本对nginx和tomcat的access_log以及catalina.out文件通过crontab进行日志分割. 今天偶然想起logrotate,小试了下,还是不错的,记录下... 查看下log目录下的日志,可以看到关于crontab的日志被分割了,我们没有定义这个,是什么实现的呢?就是l

解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题

本文摘自:(http://blog.csdn.net/stevencn76/article/details/6246162) 分类: Java技术专区2011-03-13 12:25 5017人阅读 评论(1) 收藏 举报 tomcatlinux工具任务web 由于Tomcat在默认情况下会将没有经过配置的web应用所产生的日志输出已经其本身的日志内容都输出到这个文件中,那么随着时间的推移,这个文件的尺寸将会越来越大,当需要检查日志内容时间会导致文件难以打开,而且同时tomcat依旧在不断的向文

Tomcat日志切割(logrotate)

logrotate是个强大的系统软件,它对日志文件有着一套完整的操作模式,譬如:转储.邮件和压缩等,并且默认logrotate加到cron(/etc/cron.daily/logrotate)作为每日任务执行.自动有了logrotate,我想不用再自己写日志切割脚本. 如下对Tomcat日志catalina.out日志切割 # ls -lh /usr/local/tomcat/logs/catalina.out -rw-r--r-- 1 www www 14M Aug 28 15:55 /usr

tomcat 日志切割

一.日志切割介绍 tomcat日志一般产生的是比较大的,catalina.out文件一般占用比较大,如果不做切割的话,很容易占满存储磁盘,一般需要做切割,切割的方法有多种,现介绍一种系统自动的日志切割的工具:logrotate软件,一般是系统自动的,非常好用. 二.使用logrotate分割tomcat日志 logrotate是个强大的系统软件,它对日志有着一套完整的操作模式,譬如:转存.邮件和压缩等,并且默认logrotate加到cron(/etc/cron.daily/logrotate)作