Tomcat 的 catalina.out 日积月累会越来越大,不好维护。
使用 cronolog 对 日志进行分割
yum install gcc gcc-c++ -y
mkdir -p /data/tools && cd /data/tools
wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
tar -zxvf cronolog-1.6.2.tar.gz -C /usr/local/
cd /usr/local/cronolog-1.6.2/
./configure
make && make install
# 查看cronolog安装后所在目录
which cronolog
# 一般情况下显示为:/usr/local/sbin/cronolog
修改 tomcat bin 目录下的 catalina.sh
# 进入 tomcat bin 目录下
cp catalina.sh catalina.sh.ori
vi catalina.sh
# 在 446 行出注释
#touch "$CATALINA_OUT"
# 在 460 行处开始修改
# 原文件
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 &
# 在 470 行处开始修改
# 原文件
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 &
在 bin 目录下创建 setenv.sh 定义 CATALINA_OUT 变量
vi setenv.sh
#set path of catalina.out
CATALINA_OUT=/data/logs/tomcat/my-project/logs/catalina.%Y-%m-%d.out
修改日志路径
# 进入 tomcat conf 目录下
cp server.xml server.xml.ori
vi server.xml
# directory 后跟存放 localhost_access_log 日志路径
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="/data/logs/tomcat/my-project/logs"
cp logging.properties logging.properties.ori
vi logging.properties
# 修改 四处 directory 的日志路径
重启 tomcat
日志将会按天数存放在 /data/logs/tomcat/my-project/logs 下
来源:oschina
链接:https://my.oschina.net/u/4275654/blog/4291156