Chinaunix首页 | 论坛 | 博客
  • 博客访问: 33956
  • 博文数量: 20
  • 博客积分: 185
  • 博客等级: 入伍新兵
  • 技术积分: 195
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-04 09:37
文章分类

全部博文(20)

文章存档

2015年(5)

2014年(7)

2012年(3)

2011年(5)

我的朋友

分类: LINUX

2014-10-23 14:44:33

1、下载(最新版本)

# wget

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

6.进入Tomcat的bin目录,打开catalina.sh文件,找到tomcat启动的相关行,或者你直接查找catalina.out,一般我们修改下面行中的内容(因为我们一般不会在-security条件下运行),

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

  if [ "$1" = "-security" ] ; then

    echo "Using Security Manager"

    shift

    "$_RUNJAVA" $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 \

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


      if [ ! -z "$CATALINA_PID" ]; then

        echo $! > $CATALINA_PID

      fi

  else

    "$_RUNJAVA" $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 \

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


      if [ ! -z "$CATALINA_PID" ]; then

        echo $! > $CATALINA_PID

      fi

  fi

修改

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

可以注释掉,完成之后重起Tomcat就可以了,在logs目录下可以看到catalina.2011-08-29.out的日志,是按日期生成的。



另外一种解决方法,纯shell实现的.

编写一个.sh文件,并放到tomcat下的bin目录,在cron中自动执行,shell脚本如下:

#!/bin/bash


cd `dirname $0`

d=`date +%Y%m%d`

d7=`date -d'7 day ago' +%Y%m%d`


cd ../logs/


cp catalina.out catalina.out.${d}

echo "" > catalina.out

rm -rf catalina.out.${d7}


注,

$0获取当前Shell程序的文件名

dirname $0,获取当前Shell程序的路径

cd `dirname $0`,进入当前Shell程序的目录

阅读(992) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~