转载自:http://hi.baidu.com/daizhongxian/blog/item/bba61b08c0d60f9a0b7b82e3.html
tomcat是个怪物,默认安装后,每天会自动切割日志文件,
catalina.2010-10-08.log
catalina.2010-10-09.log
catalina.2010-10-10.log
这样的形式,但是他的catalina.out不清空,任其自由增长,时间长了日志大的吓人,系统性能急剧下降!!!
本人试图找到tomcat的启动代码找到他日志分割的地方,但是没找到!郁闷!干脆不找了,在网上gg来一篇,实现目的就ok了。
代码如下:
#!/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}
cat /dev/null > catalina.out
rm -rf catalina.out.${d7}
tomcat的catalina.out一直增长,太大了会造成tomcat异常,需要对其日志进行切割每天生成一个文件,并且删除7天前的文件,把它放到tomcat的bin目录中,然后crontab每天执行。
原文:http://www.sbear.cn/archives/367
其他网友的方法:
使用log4j成功使catalina.out文件实现分割。
在tomcat根目录下建立common/classes/log4j.properties,内容如下:
############################################################################
log4j.rootLogger=INFO, R
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=${catalina.home}/logs/tomcat.newlog #设定日志文件名
log4j.appender.R.MaxFileSize=100KB #设定文件到100kb即分割
log4j.appender.R.MaxBackupIndex=10 #设定日志文件保留的序号数
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
############################################################################
在tomcat根目录下的common/lib下加入log4j.jar和commons-logging.jar
重新启动tomcat即可。
参考:
http://tomcat.apache.org/tomcat-5.5-doc/logging.html
原文链接:http://blog.csdn.net/joliny/archive/2008/04/06/2254197.aspx
=================================
还有这样的:
随着Tomcat的运行,catalina.out文件会越来越大,虽然Tomcat每日会生成一个catalina.ymd.log的文件,但catalina.out主文件仍然不断增加,需要对catalina.out按日切分才好,在网上找了一下,看到一篇《rotating catalina.out in tomcat
5.5 using cronolog》,就用公司的Tomcat配置一下。
cronolog工具已经在服务器上装过,一个对日志切分的小工具,其主页在http://cronolog.org/,我们也用它来切分Apache的日志。
进入Tomcat的bin目录,打开catalina.sh文件,找到tomcat启动的相关行,或者你直接查找catalina.out,一般我们修改下面行中的内容(因为我们一般不会在-security条件下运行),
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 \
>> “$CATALINA_BASE”/logs/catalina.out
2>&1
&
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.2009-02-18.out的日志,是按日生成的。
原文:http://i.laoer.com/rotating-catalina-out-in-tomcat-using-cronolog.html
===========================
这是补充知识:
Linux下运行的Web服务器Apache,默认日志文件是不分割的,一个整文件既不易于管理,也不易于分析统计。安装cronolog后,可以将日志文件按时间分割,易于管理和分析。
cronolog安装配置非常简单,下载后只需要输入几个命令即可完成。
1、下载(最新版本)
# wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
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
整个安装过程结束,下面需要把日志的格式配置一下:
1、虚拟主机配置文件 httpd-vhosts.conf
将Web日志设置 CustomLog 修改为以下格式
CustomLog "|/usr/local/sbin/cronolog
/www/logs/example_%Y%m%d.log" combined
当然,错误日志设置 ErrorLog 也可以利用 cronolog 分割,设置为
ErrorLog "|/usr/local/sbin/cronolog
/www/logs/error_%Y%m%d.log"
2、如果服务器上只有一个站点(当然这种情况比较少),直接按上面所说格式修改 httpd.conf 文件日志设置部分。
说明:
-
绿色部分 为 cronolog 安装后所在位置,系统版本不同可能位置不完全一样,以 which 命令查看到的位置为准;
-
蓝色部分 为设置的日志文件所在位置,根据需要修改;
-
红色部分 为设置的日志文件标识性字符,根据需要修改;
-
%Y%m%d 为日志文件分割方式,例子中为“年月日”,也可以修改成自己需要的。
分享到:
相关推荐
Linux tomcat下catalina.out日志文件分割 前言: tomcat默认使用Java.util.logging记录日志,默认只记录tomcat的日志,不记录应用的日志。tomcat支持采用log4j进行日志记录,配置方法如下: 1.更新最新的tomcat_juli...
windows下tomcat的catalina.out按天自动分割,windows下tomcat日志按天自动分割
catalina.out是tomcat把stdout和stderr重定向到文件后生成的日志文件,其生成是不受logging.properties 或 log4j.properties配置文件所影响的,需要另行安装工具(如cronolog或rotatelogs之类)进行处理。...
liunx版本 tomcat log目录下catalina.out文件切割工具,防止长时间运行导致catalina.out文件过大占用过多内存,里面有 切割工具和使用说明文档。
NULL 博文链接:https://zhao-weigang.iteye.com/blog/2174079
1、解压缩catalina.out切割工具.zip,将文件cronolog-1.6.2.tar.gz传至服务器 # tar -zxvf cronolog-1.6.2.tar.gz 2、进入cronolog安装文件所在目录 # cd cronolog-1.6.2 3、运行安装 # ./configure # make # make ...
tomcat的catalina.out的日志文件过大,用来切割日志文件用的xshell脚步。
主要介绍了详解关于tomcat切割catalina.out日志的三种方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
一般在部署Tomcat后,运行久了,catalina.out文件会越来越大,对系统的稳定造成了一定的影响。 1、可通过修改conf/logging.properties日志配置文件来屏蔽掉这部分的日志信息。 [root@localhost conf]# pwd /usr/...
linux中将tomcat的catalina.out文件按照catalina.20180821.out类似于这种格式做每天切割
Tomcat 日志切割 logrotate是个强大的...如下对Tomcat日志catalina.out日志切割 # ls -lh /usr/local/tomcat/logs/catalina.out -rw-r--r-- 1 www www 14M Aug 28 15:55 /usr/local/tomcat/logs/catalina.out 配置
默认情况下,tomcat的catalina.out日志文件是没有像其它日志一样,按日期进行分割,而是全部输出全部写入到一个catalina.out,这样日积月累就会造成.out日志越来越大,给管理造成了不便,为了实现像其它日志文件一样...
默认情况下,tomcat的catalina.out日志文件是没有像其它日志一样,按日期进行分割,而是全部输出全部写入到一个catalina.out,这样日积月累就会造成.out日志越来越大,给管理造成了不便,为了实现像其它日志文件一样...
一般在部署Tomcat后,运行久了,catalina.out文件会越来越大,对系统的稳定造成了一定的影响。 1、可通过修改conf/logging.properties日志配置文件来屏蔽掉这部分的日志信息。 [root@localhost conf]# pwd /usr/...
tomcat下catalina.out 日志过大,可以用该软件切割,readMe 里有具体步骤
鉴于在调试logback和log4j的文件切割一直无法...monitor_file=$1 #tomcat目录下的catalina.out文件的绝对路径 file_size=`du $monitor_file | awk '{print $1}'` if [ $file_size -ge 102400 ] then if [ ! -d $log_di
tomcat下catalina.out 文件过大,利用cronolog分割 cronolog日志切割用于 linux系统Tomact和springboot项目,后台日志按天分割 https://blog.csdn.net/weixin_45894220/article/details/111225928
这个就是用于切割tomcat 的catalina.out的jar包,请注意