catalina.out日志切割

背景

最近发现生产上tomcat下的日志catalina.out文件太大,影响排查问题以及写入写出性能。

百度了下发现有好多方法,但是我角色还是自己写个脚本就可以了,无需引用第三方的东西。

思路

  1. 找到文件所造路径,将之拷贝一份到新文件中
  2. 删除十天前的文件
  3. 将catalina.out内容清空

脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# !/bin/base

# catalina.out目录
log_path=/usr/java/apache-tomcat-7.0.70/logs
file_name=catalina.out

#文件绝对路径
file_pa=${log_path}/${file_name}

today=`date +%y%m%d`

# 判断文件是否存在
if [ ! -d ${log_path}/his ];then
mkdir ${log_path}/his
fi


# 十天前
day_ten_before=`date -d '10 days ago' +%y%m%d`

#十天前的文件名
file_be=${log_path}/his/${file_name}_${day_ten_before}

#当天的文件名
file_to=${log_path}/his/${file_name}_${today}

#cp文件
cp ${file_pa} ${file_to}


#清除catalina.out文件内容
echo > ${file_pa}

#删除十天前切割的日志文件
if [ -f ${file_be} ];then
rm -rf ${file_be}
fi

运行结果

运行前

运行后

本文标题:catalina.out日志切割

文章作者:wsylp

发布时间:2019年08月09日 - 16:08

最后更新:2019年08月09日 - 17:08

原始链接:http://wsylp.top/2019/08/09/catalina-out日志切割/

许可协议: 本文为 wsylp 版权所有 转载请保留原文链接及作者。

-------------本文结束感谢阅读-------------