首页

解决配置log4j.properties后只打印控制台内容不输出日志文件(模板范例)

标签:log4j,配置,commons-logging,apache     发布时间:2016-11-28   

一、问题描述

之前通过Log4j实现日志打印控制台&输出文件的功能,但是只输出控制台部分内容,却没有输出到logs文件夹下,代码部分如下

 private static Log logger = LogFactory.getLog(Bootstrap.class);@b@    //或者private    static Logger logger = Logger.getLogger(Bootstrap.class.getName());

log4j.properties配置如下

 log4j.rootLogger=info,stdout,error,file@b@@b@log4j.appender.stdout=org.apache.log4j.ConsoleAppender@b@log4j.appender.stdout.layout=org.apache.log4j.PatternLayout@b@log4j.appender.stdout.layout.ConversionPattern=[xwood-boot]  [%t] %d - %c -%-4r [%t] %-5p%c %x - %m%n @b@ @b@log4j.logger.info=info@b@log4j.appender.info=org.apache.log4j.DailyRollingFileAppender@b@log4j.appender.info.layout=org.apache.log4j.PatternLayout@b@log4j.appender.info.layout.ConversionPattern=[xwood-boot]  [%t] %d - %c -%-4r [%t] %-5p%c %x - %m%n@b@log4j.appender.info.datePattern='.'yyyy-MM-dd@b@log4j.appender.info.Threshold = INFO @b@log4j.appender.info.append=true@b@log4j.appender.info.File=../logs/xwood-boot-info.log @b@@b@log4j.logger.error=error@b@log4j.appender.error=org.apache.log4j.DailyRollingFileAppender@b@log4j.appender.error.layout=org.apache.log4j.PatternLayout@b@log4j.appender.error.layout.ConversionPattern=[xwood-boot]  [%t] %d - %c -%-4r [%t] %-5p%c %x - %m%n@b@log4j.appender.error.datePattern='.'yyyy-MM-dd@b@log4j.appender.error.Threshold = ERROR @b@log4j.appender.error.append=true@b@log4j.appender.error.File=../logs/xwood-boot-error.log

二、解决办法

1. 由于定义log4j.logger.info=info和关键词INFO相同的名称,引起冲突,所以无法输出到日志文件,修改如下模板既可以正常输出日志到文件了

 log4j.rootLogger=info,stdout,error,file@b@@b@log4j.appender.stdout=org.apache.log4j.ConsoleAppender@b@log4j.appender.stdout.layout=org.apache.log4j.PatternLayout@b@log4j.appender.stdout.layout.ConversionPattern=[xwood-boot]  [%t] %d - %c -%-4r [%t] %-5p%c %x - %m%n@b@@b@log4j.appender.file=org.apache.log4j.RollingFileAppender@b@log4j.appender.file.MaxFileSize=4MB@b@log4j.appender.file.MaxBackupIndex=9@b@@b@#- File to log to and log format@b@log4j.appender.file.File=../logs/xwood-boot-info.log @b@log4j.appender.file.layout=org.apache.log4j.PatternLayout @b@log4j.appender.file.layout.ConversionPattern=[xwood-boot]  [%t] %d - %c -%-4r [%t] %-5p%c %x - %m%n@b@ @b@@b@log4j.logger.error=error@b@log4j.appender.error=org.apache.log4j.DailyRollingFileAppender@b@log4j.appender.error.layout=org.apache.log4j.PatternLayout@b@log4j.appender.error.layout.ConversionPattern=[xwood-boot]  [%t] %d - %c -%-4r [%t] %-5p%c %x - %m%n@b@log4j.appender.error.datePattern='.'yyyy-MM-dd@b@log4j.appender.error.Threshold = ERROR @b@log4j.appender.error.append=true@b@log4j.appender.error.File=../logs/xwood-boot-error.log

2. 结果如下图所示

解决配置log4j.properties后只打印控制台内容不输出日志文件(模板范例)