cronolog分割tomcat catalina.out 日志

日志分割的原由 apache


随着时间的推移,catalina.out这个文件的尺寸将会愈来愈大,当须要检查日志内容时会致使文件难以打开,并且同时tomcat依旧在不断的向文件中输入内容,这也会下降tomcat的性能。所以将tomcat产生的catalina.out文件根据日期来分割,将天天产生的日志存放在一个独立的文件中,这样单个log文件就不会太大,并且过时的日志文件能够根据状况删除掉,或者备份到其余地方。(听说tomcat有默认的日志分割功能,能天天自动生成相似catalina.2010-10-08.log的文件,可是默认catalina.out文件却一直增加.) tomcat


以切分tomcat的catalina.out的日志为例 性能


1安装cronolog spa


wget http://cronolog.org/download/cronolog-1.6.2.tar.gz .net

tar zxf cronolog-1.6.2.tar.gz 日志

cd cronolog-1.6.2 get

./configure class

make && make install 方法


用which cronolog能够查到安装的路径,默认应该是/usr/local/sbin/cronolog,这个路径待会在修改catalina.sh时会用到。以下: touch

[root@localhost cronolog-1.6.2]# which cronolog

/usr/local/sbin/cronolog


2修改catalina.sh  这是重点


以Apache Tomcat/7.0.42为例 


第一步:

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


第二步:

touch "$CATALINA_OUT"

修改成

#  touch "$CATALINA_OUT"


第三步:

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 &  总共有两处


3重启tomcat

在日志目录下就会多了一个catalina.2014-06-12.out的日志


日志切割成功


附:


以tomcat 6.0.20为例


按上面方法先安装cronolog


再修改catalina.sh文件


org.apache.catalina.startup.Bootstrap "$@" start \

>> "$CATALINA_BASE"/logs/catalina.out 2>&1 &

改成

org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \

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


总共有两处 ****


touch "$CATALINA_BASE"/logs/catalina.out

改成

#  touch "$CATALINA_BASE"/logs/catalina.out


重启TOMCAT

相关文章
相关标签/搜索