tomcat日志分割

cronolog安装

# tar zxvf cronolog-1.6.2.tar.gz
# cd cronolog-1.6.2
# ./configure
# make
# make install

查看cronolog安装后所在目录(验证安装是否成功)

# which cronolog

正常情况下显示:
/usr/local/sbin/cronolog

要想分割tomcat的catalina.out,需作如下工作:

Tomcat7以前的版本:

(1)注释掉(#)
touch “$CATALINA_BASE”/logs/catalina.out
(2)修改tomcat bin目录下的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 &

完成之后重起Tomcat就可以看到logs文件中存在catalina.out.2015-09-13样式的日志。

Tomcat7以后的版本:

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 &

或者进行下面的操作步骤效果一样(推荐):
# vi bin/catalina.sh
找到下面这行

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

类似这样的行有2处,第一处是tomcat时带“-security”参数的启动,第二处是默认tomcat启动方式,也就是else下面的那部分,我们只修改这里。
另外还要把touch “$CATALINA_OUT"这行注释掉。
完整的修改如下:

  #touch "$CATALINA_OUT"
  if [ "$1" = "-security" ] ; then
     ........
  else
eval "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $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\"" \
-Djava.awt.headless=true \
  org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
| /usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >>/dev/null &
fi

完成之后重起Tomcat就可以看到logs文件中存在catalina.out.2018-05-29样式的日志。

img

注:-Djava.awt.headless=true \ #启用headless配置模式

  • qq_43638135
    妲己再美究为妃: 博主没有想过自己接一些私活干吗?我现在还没毕业,但是我也确实听说外挂市场自动化游戏脚本市场挺火热的,并且报酬也很丰厚,但是具体的我也不是很清楚,求解答。 (1个月前 #47楼) 查看回复(2) 举报 回复
    22