以下是我的log4j.properties文件的内容:
log4j.logger.main = INFO, main
log4j.logger.secondary = INFO, secondary
log4j.appender.main=org.apache.log4j.RollingFileAppender
log4j.appender.main.File=C:\\Workspace\\test\\main.log
log4j.appender.main.MaxFileSize=1MB
log4j.appender.main.MaxBackupIndex=1
log4j.appender.main.layout=org.apache.log4j.PatternLayout
log4j.appender.main.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1} - %m%n
log4j.appender.secondary=org.apache.log4j.RollingFileAppender
log4j.appender.secondary.File=C:\\Workspace\\test\\secondary.log
log4j.appender.secondary.MaxFileSize=1MB
log4j.appender.secondary.MaxBackupIndex=1
log4j.appender.secondary.layout=org.apache.log4j.PatternLayout
log4j.appender.secondary.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1} - %m%n
这是我的主要方法的样子:
public static void main(final String[] args)
{
final Logger mainLogger = Logger.getLogger("main");
final Logger secondaryLogger = Logger.getLogger("secondary");
mainLogger.info("In main logger");
secondaryLogger.info("In secondary logger");
}
在执行此程序时,我能够在Eclipse控制台中看到日志消息,但我没有按预期创建两个日志文件。
有人可以告诉我我错过了什么吗?
答案 0 :(得分:0)
您是否尝试定义:
log4j.rootLogger=INFO, main, secondary
而不是:
log4j.logger.main = INFO, main
log4j.logger.secondary = INFO, secondary
答案 1 :(得分:0)
正如Ishnark所指出的,Eclipse不小心导入了错误的Logger
类。它已导入java.util.Logger
而不是org.apache.log4j.Logger
。在导入适当的Logger
类(来自org.apache.log4j
)时,程序按预期工作。