有人知道为什么此日志没有写入文件吗?它写入标准输出两次,但不写入文件:
此外,我尝试删除“Stdout”附加程序,然后我根本没有收到任何日志记录。
package org.berlin.wicket;
import org.apache.log4j.Logger;
private static final Logger LOG = Logger.getLogger(QuickstartPage.class);
LOG.info("Loading constructor");
log4j.rootLogger=DEBUG,Stdout,mainAppender
log4j.appender.Stdout=org.apache.log4j.ConsoleAppender log4j.appender.Stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.Stdout.layout.conversionPattern=%-5p - %-26.26c{1} - %m\n
log4j.appender.mainAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.mainAppender.file=logs/core.log
log4j.appender.mainAppender.datePattern='.'yyyy-MM-dd
log4j.appender.mainAppender.append=true
log4j.appender.mainAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.mainAppender.layout.ConversionPattern=[%d{MM/dd/yyyy HH:mm:ss.SSS}] [%C{1}.%M():%L] [%t] [%p] - %m%n
log4j.logger.org.berlin=DEBUG,Stdout,mainAppender
最佳答案
您有两个使用相同附加程序(Stdout)的记录器,因此您会在控制台上看到两次条目。
正如其他人提到的,属性区分大小写,因此您的文件附加器配置不正确。
关于java - log4j 日志未写入文件的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13954394/