繁体   English   中英

SLF4J logger.debug()没有登录JBoss 6

[英]SLF4J logger.debug() does not get logged in JBoss 6

上下文: JBoss Application Server 6

我依靠slf4j-jboss-logmanager.jar将slf4j绑定到JBoss日志管理器。

正确记录了所有logger.info()输出。

但是, logger.debug()输出永远不会出现在日志流中。

尽管jboss-logging.xml已将CONSOLE记录器的级别设置为DEBUG ...

   <console-handler name="CONSOLE" autoflush="true" target="System.out">
      ...
      <level name="DEBUG"/>
      ...
   </console-handler>

有人知道为什么我的调试细节永远不会到达日志流吗?

从JBoss 6开始,日志管理器和jboss-logging.xml是专有的。

关键是在配置文件末尾的root-logger定义中:

默认定义将所有输出限制为 INFO级别的任何处理

   <root-logger>
      <level name="${jboss.server.log.threshold:INFO}"/>
      <handlers>
         <handler-ref name="CONSOLE"/>
         <handler-ref name="ERROR"/>
         <handler-ref name="FILE"/>
      </handlers>
   </root-logger>

将此更改为

   <root-logger>
      <level name="${jboss.server.log.threshold:DEBUG}"/>
      <handlers>

打开所有可能的DEBUG信息的大门。

可能是DEBUG信息过多。 因此,我不得不添加一些额外的过滤器:

   <logger category="org.jboss">
      <level name="INFO"/>
   </logger>

   <logger category="org.hibernate">
      <level name="INFO"/>
   </logger>

   <logger category="javax">
      <level name="INFO"/>
   </logger>

   <logger category="idealconnector">
      <level name="INFO"/>
   </logger>

   <logger category="httpclient">
      <level name="INFO"/>
   </logger>

   <logger category="my.package">
      <level name="DEBUG"/>
   </logger>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM