我的log4j.properties
上有以下内容log4j.rootLogger = debug, stdout, fileLog
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.fileLog = org.apache.log4j.RollingFileAppender
log4j.appender.fileLog.File = C:/logs/services.log
log4j.appender.fileLog.MaxFileSize = 256MB
log4j.appender.fileLog.MaxBackupIndex = 32
#Category: ConsultaDados
log4j.category.ConsultaDados=ConsultaDados
log4j.appender.ConsultaDados=org.apache.log4j.DailyRollingFileAppender
log4j.appender.ConsultaDados.layout=org.apache.log4j.PatternLayout
log4j.appender.ConsultaDados.layout.ConversionPattern={%t} %d - [%p] %c: %m %n
log4j.appender.ConsultaDados.file=C:/logs/consulta.log
log4j.appender.ConsultaDados.DatePattern='.' yyyy-MM-dd-HH-mm
即时创建我的记录器:
myLogger = Logger.getLogger("ConsultaDados");
但这并没有记录我对该文件的调用。他们被扔进了rootLogger
有什么想法吗?
答案 0 :(得分:10)
首先,您的类别未映射到appender,第二个 ConsultaDadosEORI 与任何类别都不匹配。
以下是一个示例:
log4j.appender.YOUR_APPENDER=org.apache.log4j.RollingFileAppender
log4j.appender.YOUR_APPENDER.File=${SYSTEM_PROPEY_WITH_LOGGER_FOLDER}/log_file.log
log4j.appender.YOUR_APPENDER.Append=true
log4j.appender.YOUR_APPENDER.MaxFileSize=20MB
log4j.appender.YOUR_APPENDER.MaxBackupIndex=2
log4j.appender.YOUR_APPENDER.layout=org.apache.log4j.PatternLayout
log4j.appender.YOUR_APPENDER.layout.ConversionPattern=%d [%t] %p %c - %m %n
log4j.category.**YOUR_PACKAGE**=**INFO,YOUR_APPENDER**
log4j.additivity.**YOUR_PACKAGE**=true or false
答案 1 :(得分:4)
只是为了完成这个线程,真正的问题是你的类别行上的第一个值应该是一个日志级别。所以,正如你正确发现的那样,改变:
<强> log4j.category.ConsultaDados = ConsultaDados 强>
到
<强> log4j.category.ConsultaDados =信息,ConsultaDados 强>
工作正常。作为一个FYI,您也可以将行更改为
<强> log4j.category.ConsultaDados =,ConsultaDados 强>
会导致您从根记录器继承日志记录级别。