欢迎来到博达网站群学习网!
|
当前位置: 九游会 >> 知识库 >> 部署类 >> 应用服务 >> 正文

关于linux下tomcat的catalina.out文件过大问题-九游会

发布时间:2016-08-03    浏览次数:次

现象

linuxtomcatcatalina.out文件过大。

原因

尽管也生成了日志文件catalina.2009-0x-0x.log类型的文件,但是其中的catalina.out文件依然增大。

解决方法

方法1—分割流:

使用cronolog工具切分tomcatcatalina.out日志文件,cronolog一个对日志切分的小工具,其九游会主页在httpcronolog.org,我们也可以用它来切分apache的日志。

方法2—脚本流:

使用cron每天来备份当前的catalina.out,然后清空他的内容;

参考脚本如下:

#!binsh

y=`date %y`

m=`date %m`

d=`date %d`

cd path tomcatlogs

cp catalina.out catalina.out.$y$m$d4

echo  catalina.out

exit

注意linux系统的cron服务是否启动,是否正常工作,还有脚本的存放路径。

方法3—猥琐流

打开bin目录下的catalina.sh文件,终究不过是个bash文件,查找一下,catalina.out总共出现三次;部分截图:

shift

touch $catalina_baselogscatalina.out

if [ $1 = -security ] ; then

   echo using security manager

   shift

   $_runjava $java_opts $logging_config $catalina_opts

     -djava.endorsed.dirs=$java_endorsed_dirs -classpath $classpath

     -djava.security.manager

     -djava.security.policy==$catalina_baseconfcatalina.policy

     -dcatalina.base=$catalina_base

     -dcatalina.home=$catalina_home

     -djava.io.tmpdir=$catalina_tmpdir

     org.apache.catalina.startup.bootstrap $@ start

      $catalina_baselogscatalina.out 2&1 &

     if [ ! -z $catalina_pid ]; then

       echo $!  $catalina_pid

     fi

else

   $_runjava $java_opts $logging_config $catalina_opts

     -djava.endorsed.dirs=$java_endorsed_dirs -classpath $classpath

     -dcatalina.base=$catalina_base

     -dcatalina.home=$catalina_home

     -djava.io.tmpdir=$catalina_tmpdir

     org.apache.catalina.startup.bootstrap $@ start

      $catalina_baselogscatalina.out 2&1 &

修改前注意原文件的catalina.sh的备份哟~!!

修改以上代码中的

$catalina_baselogscatalina.out 2&1 &

devnull 2&1 &

保存,然后启动tomcat,目前这个 catalina.out一直是空的了。

这个方法个人认为比较勇敢,目前还没有在生产环境测试过。虚拟机测试是通过的。

方法4—人流

这个方法其实就是linux系统管理员手工去删除,人工操作,简称“人流”;

删除之前最好停止tomcat的服务;。

网站地图