您的位置:首页 > 运维架构 > Tomcat

Tomcat日志catalina.out分割

2016-07-05 17:09 435 查看
Tomcat默认生成的日志文件catalina.out,随着时间的推移,逐渐增大,可能达到G数量级。文件过大,我们将无法使用过常规编辑工具查看,严重影响系统维护工作

今天我们使用cronolog工具来做分割

cronolog安装使用

A、 cronolog工具下载

官方URL:http://cronolog.org/download/index.html(可能下载不了,可以找度娘)

B、 cronolog编译安装

tar xvf cronolog-1.6.2.tar.gz
./configure
make
sudo make install


C、 修改Tomcat启动脚本catalina.sh

1、 修改输出日志路径


修改:
if [ -z "$CATALINA_OUT" ] ; then
CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
fi
为:
if [ -z "$CATALINA_OUT" ] ; then
CATALINA_OUT="$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out
fi


2、 删除生成日志文件


注释:
touch "$CATALINA_OUT"
为:
#touch "$CATALINA_OUT"


3、 修改启动脚本参数


修改:
org.apache.catalina.startup.Bootstrap "$@" start \
>> "$CATALINA_OUT" 2>&1 "&"
为:
org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
| /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &


D、 重启Tomcat

Tomcat输出日志文件分割成功,输出log文件格式为:catalina.20XX-XX-XX.out类型

Linux定时删除文件

日志文件太多了之后需要定时删除

文件删除命令Find

代码如下:

find /root/apache-tomcat-7.0.54/logs -type -f -mtime +6 -exec rm -rf {} \;


以上命令删除30天以前的过期文件

命令说明:

/root/apache-tomcat-7.0.54/logs是查找文件的路径。

-type f是指定文件类型为普通文件。

-mtime +6是指修改时间距离现在6天的文件。

-exec rm -f指执行删除匹配出来的文件并且不提示,有的系统需要带单引号,有的不需要。

加入Crontab任务

将以上命令,添加到crontab中,即可实现定期删除了。

比如,每天的0点0分实现删除,可以这样:

代码如下:

#crontab -e
00 00 * * * find /root/apache/logs -type -f -mtime +6 -exec rm -rf {} \;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: