【发布时间】:2015-10-28 15:51:01
【问题描述】:
我有一个 log4j.properties 文件:
log4j.logger.com.mypackage=debug, R, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=myapplication.log
log4j.appender.R.MaxFileSize=10MB
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
登录到标准输出工作正常,如果我将第一行中的“调试”更改为“错误”,我只会在标准输出中得到错误消息。
创建了 myapplication.log 但它是空的。如果我从第一行中删除“R”,则不会创建该文件。
将文件显示为
-rw-r--r-- 1 <myname> staff 0B Oct 28 16:26 myapplication.log
我做了一个 chmod 777 myapplication.log 但没有帮助。
我在 OS X 10.11.1 上使用 STS 3.6.4
我搜索了 google 和 stackoverflow,但到目前为止找不到解决方案。
编辑: 我换行了
log4j.logger.com.mypackage=debug, R, stdout
到
log4j.rootLogger=debug, R, stdout
现在消息被写入文件,但只有那些不是来自 mypackage 的消息。
【问题讨论】: