Java log4j类

Java log4j类,java,logging,log4j,Java,Logging,Log4j,我的log4j属性中有以下内容 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.fileL

我的log4j属性中有以下内容

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");
但这不会把我的呼叫记录到文件中。他们被扔进了根记录器


有什么想法吗?

首先,您的类别没有映射到附录,第二个Consultadoseori与任何类别都不匹配

以下是一个示例:

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

为了完成这个线程,真正的问题是类别行上的第一个值应该是日志级别。因此,正如您正确发现的,更改:

log4j.category.consultados=consultados

log4j.category.consultados=info,consultados

工作正常。仅供参考,您也可以将该行更改为

log4j.category.consultados=,consultados


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

这是一个错误类型,我唯一不明白的是,为什么您说我的类别没有映射到appender。因为我有:log4j.category.ConsultaDados=ConsultaDadosUps,我的错误。我很困惑,你在定义追加器之前定义了一个类别。也许这就是问题所在,我总是先声明appender,然后再使用它。它工作得很好=D,但我认为真正的诀窍是将级别放在其中,因为类别已被弃用并替换为logger。