Weblogic12 + Log4j日志记录未写入服务器日志

时间:2016-02-29 15:49:17

标签: java maven logging log4j weblogic12c

我知道有很多关于此的问题,但我确实经历了所有这些问题,并且有点混淆了我自己,我列出了我遵循的步骤,请让我知道我搞砸了哪里。

1)我只想在应用程序级别使用Log4j,因此需要复制WL_HOME / server / lib / wllog4j.jar和Domail_Home / Lib中的log4j.jar?

2)我正在使用Maven,我在我的pom.xml [war]中添加了Log4j依赖项。我的WAR包含在EAR中。

3)由于我想在weblogic托管服务器日志文件中编写日志,我创建了一个自定义appender,使用weblogic,NonCatalogAppender在链接中提到 - https://blog.desgrange.net/2010/02/15/logging-in-weblogic-console-with-log4j.html

4)我在war / src / main / resources中复制了日志文件,我看到maven将它们添加到classpath,即war / target / classes,请参阅下面的我的lo4j xml http://jakarta.apache.org/log4j/'>

  <!-- stdout appender settings -->
  <appender name="STDOUT" class="com.xyz.logging.util.WeblogicAppender">
      <param name="Threshold" value="DEBUG"/>
      <layout class="org.apache.log4j.PatternLayout">
          <!-- notes on patterns:
              %p - priority (i.e. level) of message
              %c - class that threw error 
              %m - message in logger's method, e.g. "Exiting application HERE..." 
              %n - carriage return
              %d - date information
          -->
          <param name="ConversionPattern" value="%c{1} %m"/>
      </layout>
</appender>

<!-- settings for root debugger -->
<root>
    <level value="DEBUG"/>
    <appender-ref ref="STDOUT"/>
</root>

5)现在我没有在配置级别上进行任何更改,但是我没有看到附加到服务器日志的任何内容。当我手动初始化NonCatlogLogger并调用记录器时,它可以正常工作:

NonCatalogLogger logger =new NonCatalogLogger("XYZ");
logger.debug("This is the debug message")

6)当我在eclipse中调试应用程序时,看起来我的自定义appender永远不会被调用。

1 个答案:

答案 0 :(得分:0)

知道了,只需要在“服务器启动”下面填入参数。

-Dweblogic.log.Log4jLoggingEnabled =真