9404803 发表于 2018-12-7 11:13:00

Tomcat的catalina.out日志的cronolog分割

  Linux上tomcat的日志输出在catalina.out里面,但是不方便查看,这里使用cronolog按一定时间分割日志(例子里面以天为分割单位)。由于最近的项目使用了tomcat应用服务器,产生的日志文件挺大的,主要是调试中打印的一些信息占空间,比如说System.out和log等等。tomcat 的catalina.out文件的不断扩大,导致系统磁盘空间边变小,所以想到了cronolog工具。
  1、下载
  直接百度cronolog下载
  2、解压缩
  # tar zxvf cronolog-1.6.2.tar.gz
  3、进入cronolog安装文件所在目录
  # cd cronolog-1.6.2
  4、运行安装
  # ./configure
  # make
  # make install
  5、查看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 "$@" start2>&1 \
  | /usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null &
  完成之后重起Tomcat就可以了。
  隔天看logs文件中是否有catalina.2015-09-13.out样式的日志。
  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.out.%Y-%m-%d
  fi
  8
  2第二步
  将
  touch "$CATALINA_OUT"
  改为
  #touch "$CATALINA_OUT"
  9
  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 &
  完成之后重起Tomcat就可以了。
  隔天看logs文件中是否有catalina.out.2015-09-13样式的日志。

页: [1]
查看完整版本: Tomcat的catalina.out日志的cronolog分割