Logback不会在Weblogic 12c中打印任何日志

时间:2015-06-17 06:02:04

标签: java logback weblogic12c

我想从Logback转到java.util.logging.Logger。首先,我在dependency.jar文件中使用它。 MyApp.ear仍在使用java logger

以下是logback.xml

<configuration>
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <!-- encoders are assigned the type
     ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
    <encoder>
      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{5} - %msg%n  
      </pattern>
    </encoder>
  </appender>
  <root level="WARN">          
     <appender-ref ref="STDOUT" />
  </root>  
</configuration>

我将以下依赖的jar文件添加到我的ant build文件中。

  <pathelement location="${global.lib}/slf4j-api-1.6.4.jar"/>
  <pathelement location="${global.lib}/logback-classic-1.0.1.jar"/>

我使用weblogic 12C。现在我的日志级别为WARN。但是INFO日志仍在打印。这意味着它仍然使用java logger。我怀疑dependent.jarlogback log java logger会被MyApp.ear中的weblogic 12C覆盖。

我不确定在logback.xml中是否有任何地方可以修改以启用它。

dependency.jar位于uint32_t内。

1 个答案:

答案 0 :(得分:0)

我将jar路径添加到我的build.xml

<pathelement location="${global.lib}/logback/logback-core-1.0.10.jar"/>

此外,我将以下代码添加到我的weblogic-application.xml

<wls:prefer-application-packages>
    <wls:package-name>org.slf4j.*</wls:package-name>
</wls:prefer-application-packages>
<wls:prefer-application-resources>
    <wls:resource-name>org/slf4j/impl/StaticLoggerBinder.class</wls:resource-name>
</wls:prefer-application-resources>

这解决了我的问题。