您的位置:首页 > 运维架构 > Tomcat

使用log4j接管tomcat日志catalina.out

2017-11-30 10:29 495 查看

使用log4j接管tomcat日志

前言

工作过程中,发现tomcat会把错误给吃掉的情况,经过各种百度,终于找到了解决方案,那就是使用log4j来接管tomcat日志。这样还有一个好处,可以一日记录一个文件,不会导致catalina.out文件无限大的情况。

操作步骤

一、将log4j的jar包(log4j-1.2.14.jar)和log4j.properties放到tomcat的lib目录下

log4j.rootLogger=info,Console,ROLLING_FILE
#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Threshold=WARN
log4j.appender.CONSOLE.Target=System.out
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
#file
log4j.appender.ROLLING_FILE = org.apache.log4j.DailyRollingFileAppender
log4j.appender.ROLLING_FILE.File = ${catalina.home}/logs/meopen.log
log4j.appender.ROLLING_FILE.DatePattern = '.'yyyy-MM-dd
log4j.appender.ROLLING_FILE.Append = true
log4j.appender.ROLLING_FILE.Threshold = INFO
log4j.appender.ROLLING_FILE.layout = org.apache.log4j.PatternLayout
log4j.appender.ROLLING_FILE.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n

二、到tomcat官网下载对应版本的tomcat-juli.jartomcat-juli-adapters.jar

下载地址:http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.63/bin/extras/



三、将tomcat-juli-adapters.jar放到tomcat的lib目录下

四、将tomcat-juli.jar放到tomcat的bin目录下(覆盖)

五、修改 Tomcat 的 conf/context.xml文件,将<Context>为<Context swallowOutput="true">
(增加swallowOutput="true" 的属性配置,只有这样才能完全的把tomcat的stdout给接管过来。这一步很关键在官网及网上找了许多资料都没有提及。);
六、删除 Tomcat 的 conf/logging.properties文件(或者重命名-建议);
七、把工程中的log4j.properties 文件拷贝到在
Tomcat 的 lib 目录下;
八、重启tomcat
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: