独立程序中的slf4j,log4j和JBoss 7 logmanager =>一无所获

时间:2014-03-26 13:48:10

标签: java log4j jboss7.x slf4j

我想通过slf4j在独立程序中使用JBoss logmanager。我使用以下依赖项(使用JBoss7EAP6 maven存储库):

<dependency org="org.slf4j"            name="slf4j-api"              rev="1.7.2.redhat-2"/>
<dependency org="org.jboss.slf4j"      name="slf4j-jboss-logmanager" rev="1.0.2.GA-redhat-1"/>
<dependency org="org.jboss.logmanager" name="log4j-jboss-logmanager" rev="1.0.2.Final-redhat-1"/>

我像这样初始化记录器:

package my.testpackage;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

...

private static final Logger LOGGER = LoggerFactory.getLogger(MyClass.class);

我的log4j.properties

log4j.rootLogger=ALL, ConsoleAppender
log4j.appender.ConsoleAppender=org.apache.log4j.ConsoleAppender 
log4j.appender.ConsoleAppender.layout=org.apache.log4j.PatternLayout 
log4j.appender.ConsoleAppender.layout.ConversionPattern=%d{ISO8601} %-5p [%t] %c\: %m%n 
log4j.appender.ConsoleAppender.Threshold=WARN 

问题是,没有任何记录。查看日志消息的唯一方法是为my.testpackage.MyClass添加显式记录器配置,如下所示:

log4j.logger.my.testpackage.MyClass=WARN   # WORKS

父包配置不起作用

log4j.logger.my=WARN # DOESN'T WORK

1 个答案:

答案 0 :(得分:1)

您正在使用的JBoss日志管理器已经很老了,我对此并不了解。我可以为您提供当前版本的信息,1.5.2.Final。

JBoss Log Manager使用自己的配置文件格式,类似于log4j,需要在类路径中调用logging.properties,或者添加系统属性logging.configuration=file:path/to/file.properties。不幸的是,目前还没有关于它的真实文档,但我会将你的log4j示例转换为JBoss Log Manager格式。

# Additional loggers to configure (the root logger is always configured)
loggers=my.testpackage.MyClass,my

logger.level=INFO
logger.handlers=CONSOLE

logger.my.testpackage.MyClass.level=WARN

logger.my.level=WARN

handler.CONSOLE=org.jboss.logmanager.handlers.ConsoleHandler
handler.CONSOLE.level=INFO
handler.CONSOLE.formatter=COLOR-PATTERN
handler.CONSOLE.properties=autoFlush,target,enabled
handler.CONSOLE.autoFlush=true
handler.CONSOLE.target=SYSTEM_OUT
handler.CONSOLE.enabled=true

formatter.COLOR-PATTERN=org.jboss.logmanager.formatters.PatternFormatter
formatter.COLOR-PATTERN.properties=pattern
formatter.COLOR-PATTERN.pattern=%K{level}%d{HH\:mm\:ss,SSS} %-5p [%t] %c: %s%E%n