log4j类别

时间:2009-05-25 11:02:27

标签: java logging log4j

我的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

有什么想法吗?

2 个答案:

答案 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

会导致您从根记录器继承日志记录级别。