繁体   English   中英

Log4j不会写入文件,并且无法禁用Spring日志

[英]Log4j does not write into file and cannot disable spring log

我有以下问题:

我的环境是Apache Tomcat 7.0.72,并且有三个日志,cmfront,cmback和catalina.out。

两者的配置(cmfront和cmback)相同,即cmfront:

# Root logger option
log4j.rootLogger=OFF

# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=${catalina.home}/logs/CmFront.log
log4j.appender.file.MaxFileSize=20MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

log4j.logger.CmFront=INFO,file,stdout

和cmback:

# Root logger option
log4j.rootLogger=OFF

# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=${catalina.home}/logs/CmBack.log
log4j.appender.file.MaxFileSize=20MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

log4j.logger.CmBack=INFO,file,stdout
log4j.logger.o=OFF

但是,当我部署cmfront war时,部署没有任何问题,但是当我尝试使用cmback时,我的文件没有写任何内容,并且具有以下日志记录行:

16:08:28.768 [localhost-startStop-1] DEBUG o.s.c.e.PropertySourcesPropertyResolver - Searching for key 'spring.liveBeansView.mbeanDomain' in [systemEnvironment]
16:08:28.768 [localhost-startStop-1] DEBUG o.s.c.e.PropertySourcesPropertyResolver - Could not find key 'spring.liveBeansView.mbeanDomain' in any property source. Returning [null]

还有很多这样的行,我的问题是,为什么在一次战争中,日志记录属性起作用并且不打印os ...调试行,而另一方面,日志没有写入,并且如果有,还会打印很多调试行配置是一样的吗?

这些属性不是特定于应用程序的,而是与弹簧相关的属性

如果您已经配置了与mbean或其他任何相关的任何spring bean,我认为只要应用程序不受影响,您就可以忽略它们。

至于记录

试试下面的log4j.rootLogger = INFO,file,stdout

yru将root logger设置为off,因为您没有定义任何特定的logger(例如com。****。com),因此所有日志都应通过root logger。

为了使日志正常工作,您应该启用根记录器。

这是我的猜测,可能不是确切答案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM