Tomcat解决日志 catalina.out qc.log 过大

本文介绍了如何解决Tomcat日志文件catalina.out和qc.log快速增长的问题。首先,可以通过调整logging.properties文件中日志级别来限制输出。其次,可以将日志输出重定向到/dev/null以阻止日志积累。再者,使用cronolog工具进行日志切割并清空。最后,提供了一个脚本用于删除qc.log的旧日志,仅保留最近三天的数据。

tomcat的下的日志catalina.out 和 qc.log疯狂增长,以下是解决办法


我生产环境tomcat版本

Server version: Apache Tomcat/7.0.35
Server number:  7.0.35.0
OS Name:        Linux
OS Version:     2.6.18-194.el5
Architecture:   amd64
JVM Version:    1.7.0_13-b20



一、catalina.out

1.修改日志输出级别(未验证)

位置 conf/logging.properties
1catalina.org.apache.juli.FileHandler.level = FINE
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.


修改日志级别  将FINE 改为OFF,或者WARNING;
每类日志的级别分为如下 7 种:
SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value)




2.将日志输出到 /dev/dull
查找一下在 tomcat/bin/catalina.sh 中相关配置   
 if [ -z "$CATALINA_OUT" ] ; then
  CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
fi
……
 touch "$CATALINA_OUT"
  if [ "$1" = "-security" ] ; then
    if [ $have_tty -eq 1 ]; then
      echo "Using Security Manager"
    fi
    shift
    eval \"$_RUNJAVA\" \"$LOGGING_CONFIG\" $JAVA_OPTS $CATALINA_OPTS \
      -Djava.endorsed.dirs=\"$JAVA_ENDORSED_DIRS\" -classpath \"$CLASSPATH\" \
      -Djava.security.manager \
      -Djava.security.policy==\"$CATALINA_BASE/conf/catalina.policy\" \
      -Dcatalina.base=\"$CATALINA_BASE\" \
      -Dcatalina.home=\"$CATALINA_HOME\" \
      -Djava.io.tmpdir=\"$CATALINA_TMPDIR\" \
      org.apache.catalina.startup.Bootstrap "$@" start \
      >> "$CATALINA_OUT" 2>&1 "&"


  else
    eval \"$_RUNJAVA\" \"$LOGGING_CONFIG\" $JAVA_OPTS $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_OUT" 2>&1 "&"
修改以上代码中的
>> "$CATALINA_OUT" 2>&1 &

>> /dev/null 2>&1 &





3.分割后清空日志
使用cronolog工具切割日志
下载安装cronolog


修改tomcat/bin/catalina.sh 中相关配置  (参照2中代码)
注释掉
#  touch "$CATALINA_OUT"
修改以上代码中的
>> "$CATALINA_OUT" 2>&1 &

>> | /bin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null &


重启tomcat

删除日志参考 二 中脚本





4.手动删除
关闭tomcat。手动删除日志,重启  







二、qc.log  日志
直接脚本删除,只保留最近三天
#! /bin/bash
logdir=/usr/local/tomcat/webapps1
cd ${logdir}
declare -i filesum=`ls qc.log.* | wc -l`
declare -i delnum=$filesum-3
if [ "${delnum}" -ge 1 ];then
rm -rf `ls -tr qc.log.* | head -${delnum}`
fi
~







                
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值