Tomcat日志文件定时清理备份的脚本_Tomcat

以下脚本主要备份的日志文件为tomcat的catalina.out、localhost_access_log.yyyy-mm-dd.log日志和项目的日志文件,其中项目的日志文件格式为"projectname-yyyy-mm-dd.log",以下为备份脚本,具体的操作都有相应的注释,供大家参考,具体情况请根据日志文件的格式和要求来使用本脚本。

#!/bin/sh
######
# 日志定时运行时间为每天0点1分
# 删除20天之前的日志文件,压缩一周之前的日志文件
# 日志文件时间是根据日志名称后面的日期来计算
# 运行脚本注意日志文件中是否有其他相同后缀的非日志文件和日志文件名称是否符合要求
######
#日志文件所在目录
path=/home/tomcat/apache-tomcat-project/logs
#进入日志目录
cd $path
#catalina.out日志文件备份
#获取前一天的日期
bak_date=`date +%Y-%m-%d -d "1 days ago"`
#备份catalina.out日志,后面添加日期
cp catalina.out catalina.out.$bak_date.log
#清空catalina.out日志文件
echo > catalina.out
#20天之前的日志文件删除
#获取20天之前的日期
del_date=`date +%Y-%m-%d -d "20 days ago"`
#获取文件名中的日期字符串,然后对比时间进行相应的操作,localhost_access_log的后缀文件名一般是txt,这里包括txt文件
for n in `ls *.log *.txt -1`;do
m=`echo $n | awk -F. '{print $(NF-1)}'`
m=`echo ${m:0-10}`
if [[ $m < $del_date || $m = $del_date ]];then
echo file $n will be deleted.
rm -rf $n
fi
done
#一周之前的文件压缩
#获取一周之前的日期
zip_date=`date +%Y-%m-%d -d "7 days ago"`
#获取文件名中的日期字符串,然后对比时间进行相应的操作
for n in `ls *.log *.txt -1`;do
m=`echo $n | awk -F. '{print $(NF-1)}'`
m=`echo ${m:0-10}`
echo $n $m
if [ ! $m ]; then
echo "IS NULL"
continue
fi
if [[ $m < $zip_date || $m = $zip_date ]];then
echo file $n will be zip.
zip $n.zip $n
rm -rf $n
fi
done

以上所述是小编给大家介绍的Tomcat日志文件定时清理备份的脚本,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索tomcat日志定时清理、定时清理日志脚本、tomcat定时重启脚本、tomcat7定时重启脚本、定时删除tomcat日志,以便于您获取更多的相关知识。

时间: 2024-10-24 10:26:10

Tomcat日志文件定时清理备份的脚本_Tomcat的相关文章

tomcat 日志文件 运行正常

问题描述 tomcat 日志文件 运行正常 0:0:0:0:0:0:0:1 - - [16/Feb/2016:11:27:59 +0800] "GET /xuxunews/god/login HTTP/1.1" 404 987 状态码404,后的数字987是什么意思 解决方案 最主要还不是404嘛,应该排查下这个get请求把

centos下tomcat日志文件乱码

centos下tomcat日志文件乱码 ,最近装了centos7.0准备用来搭建web服务器. 遇到一个问题折腾了很久: 在tomcat日志文件中的中文全部为?号,并不是因为linux的编码问题引起的, 而是因为启动tomcat的时候需要设置 什么是 centos下tomcat日志文件乱码 最近装了centos7.0 准备用来搭建web服务器.遇到一个问题折腾了很久: 在tomcat日志文件中的中文全部为?号,并不是因为linux的编码问题引起的,而是因为启动tomcat的时候需要设置java虚

tomcat日志文件,但运行无措

问题描述 tomcat日志文件,但运行无措 0:0:0:0:0:0:0:1 - - [16/Feb/2016:11:27:59 +0800] "GET /xuxunews/god/login HTTP/1.1" 404 987 状态码404,后面987是什么含义 解决方案 在server.xml中查看access日志的配置,看下pattern对应的是什么含义. prefix="localhost_access_log." suffix=".txt"

tomcat日志文件不完整

问题描述 tomcat日志文件不完整 大家好,请教大家一个问题,为什么我的tomcat中logs文件夹下面只有 这一种类型的日志文件,其他类型的只有刚配置好tomcat的时候有 有时候需要在tomcat日志里面找程序崩溃的原因,localhost_access_log.2015-02-15.txt 这种日志里面只是储存了URL地址对分析问题没有用 tomcat 详细的错误日志在哪里找啊?还是我的tomact日志文件配置有问题? 解决方案 我是做安卓的,说一下我android的logcat吧,我觉

tomcat日志文件15G。。。。

问题描述 今天无意间看了一下服务器,发现tomcat根目录下面有个叫jlx.log的日志文件竟然有15G这么大!然后删除了重启了下tomcat又生成一个1M的这处文件,并且一直在增大!看了下里面的日志,发现全部都是Spring注解AOP里面的一些日志类东西,不知道有哪位高手见过这个问题啊,帮小弟解决一下,谢谢啦! 解决方案 给你贴个例子log4j.rootLogger= error, stdout, logfile log4j.appender.stdout=org.apache.log4j.C

mysql定时自动备份数据库脚本代码(linux/windows)

操作步骤: 方法一 1.安装p7zip:由于源里面没有此包,直接下载源码安装. 地址:http://p7zip.sourceforge.net/  代码如下 复制代码 wget http://sourceforge.net/projects/p7zip/files/p7zip/9.20.1/p7zip_9.20.1_src_all.tar.bz2 tar xvf p7zip_9.20.1_src_all.tar.bz2 cd p7zip_9.20.1_src_all make && mak

使用cwRsync实现windows下服务器文件定时同步备份(附错误处理方法)_服务器其它

首先要下载cwRsync的服务端和客户端软件,下载地址如下: 服务端:cwRsync Server (多台服务器文件同步服务端) V4.1.0 免费版 客户端:cwRsync(多服务器文件同步客户端) V4.1.0 免费版 不过我们使用的一般不是最新版本,老版本可以到s.jb51.net的服务器文件同步专区下载 然后我在本地机器上安装了其中的服务器端(10.0.2.136),然后在同网段下的另一台机器(10.0.2.137)安装了客户端.为了测试,我专门在本地机器上的f盘上放置了我们的产品dnt

Linux使用定时任务每周定时清理45天以前日志_Linux

本文主要介绍的是Linux使用定时任务每周定时清理45天以前日志.服务器每天会产生很大的日志文件,为了不使硬盘被日志文件塞满,因此需要定期清理日志文件.这时我们可以写一个shell脚本用来清理某个路径下45天以前的日志,然后再设置一个定时任务每周定时执行这个脚本即可. ①清理某个路径下的日志脚本delOldLogs.sh: [root@prx01 cleanlog]# vim /usr/local/cleanlog/delOldLogs.sh #!/bin/sh #删除输入路径下的修改时间在45

linux中rsync异步服务器实现文件同步与备份

  Rsync 非常适合在两台机器之间快速同步大型.复杂的目录,例如论坛的附件目录.再配合 ssh ,则安全性也有保证,且可以利用 ssh public key 和 cron 来进行自动定时同步. 说明:两台机器分别为 localhost 和 remotehost ;用户分别为 localuser 和 remoteuser. 环境:FreeBSD 4.9 和 FreeBSD 6.1  代码如下   设置 ssh public key 认证 $ssh-keygen -t dsa -b 2048 生