log4j日志文件在Servlet 容器中文件位置的通用写法

将应用移到Jetty下后发现产生的日志文件位置有问题(默认关闭的),后经检查发现在log4j.properties 中使用

${catalina.base}

当然在jetty中是认不出这个变量的,其有一个相似的变量为

${Jetty.base}
但是若这样设置,将来应用在tomcat 中或者其它的容器如WebLogic中又不可用,如何做到配置文件在各种Servlet容器可用呢?

其实很简单,只需将其配置成logs/下面就好,下面是我们的一个简化配置:

#  Logging level
app.log=logs/
log4j.rootLogger=debug, file, CONSOLE


log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender


log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%-4r [%t] %-5p %c %x \u2013 %m%n


#- size rotation with log cleanup.
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.MaxFileSize=64MB
log4j.appender.file.MaxBackupIndex=9


#- File to log to and log format
log4j.appender.file.File=${app.log}/app.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%-5p - %d{yyyy-MM-dd HH:mm:ss.SSS}; %C; %m\n


log4j.logger.org.apache.zookeeper=WARN
log4j.logger.org.apache.hadoop=WARN


# set to INFO to enable infostream log messages
log4j.logger.org.apache.solr.update.LoggingInfoStream=OFF

转载于:https://my.oschina.net/doz/blog/538354

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值