Log4j2 Mule问题

Log4j2 Mule问题,mule,log4j2,Mule,Log4j2,我们在mule 3.6.4服务器上部署了各种mule应用程序,所有这些应用程序都在应用程序的类路径中定义了自己的log4j配置,如下所示。(示例1) 这些应用程序在Mule ESB中按此顺序部署 应用程序1 应用程序2 应用程序3 出于某种原因,应用程序的所有日志记录都输出到控制台,并且只输出应用程序3的日志文件。日志记录不适用于应用程序1或2 有人能解释这件事吗?这是类加载器的问题吗?我们正在运行Mule 3.6.4 谢谢一切都将进入控制台,因为您的配置中有。log4j配置应该位于每个{a

我们在mule 3.6.4服务器上部署了各种mule应用程序,所有这些应用程序都在应用程序的类路径中定义了自己的log4j配置,如下所示。(示例1)


这些应用程序在Mule ESB中按此顺序部署

应用程序1 应用程序2 应用程序3

出于某种原因,应用程序的所有日志记录都输出到控制台,并且只输出应用程序3的日志文件。日志记录不适用于应用程序1或2

有人能解释这件事吗?这是类加载器的问题吗?我们正在运行Mule 3.6.4


谢谢

一切都将进入控制台,因为您的
配置中有
。log4j配置应该位于每个{app}/classes/中的

对于File appender,您是否尝试为每个应用程序使用不同的文件名-

<RollingFile name="file"
                 fileName="${sys:mule.home}/logs/app1test.log"
                 filePattern="${sys:mule.home}/logs/app1test.%d{yyyy-MM-dd}">

第二个应用程序-

<RollingFile name="file"
                     fileName="${sys:mule.home}/logs/app2test.log"
                     filePattern="${sys:mule.home}/logs/app2test.%d{yyyy-MM-dd}">

您是否尝试对RollingFile附加器使用append参数?您还可以考虑为每个应用程序提供RollingFile名称的唯一值。大概是这样的:

申请1-

<RollingFile name="app2_file"
             fileName="${sys:mule.home}/logs/app1test.log"
             filePattern="${sys:mule.home}/logs/app1test.%d{yyyy-MM-dd}" append="true">

  <PatternLayout
          pattern="&lt;%-4d{DATE}&gt; &lt;%-5p&gt; &lt;%t&gt; &lt;%m&gt; %n" />
  <TimeBasedTriggeringPolicy />
</RollingFile>

申请2-

<RollingFile name="file"
             fileName="${sys:mule.home}/logs/appt2est.log"
             filePattern="${sys:mule.home}/logs/app2test.%d{yyyy-MM-dd}" append="true">

  <PatternLayout
          pattern="&lt;%-4d{DATE}&gt; &lt;%-5p&gt; &lt;%t&gt; &lt;%m&gt; %n" />
  <TimeBasedTriggeringPolicy />
</RollingFile>


“您的log4j配置应该位于每个{app}/classes/”中。每个应用程序都有一个log4j2。你上面给出的例子正是我们正在做的。我们在classpathNo nothing中为每个应用程序都提供了三个log4j文件,所有三个应用程序的所有日志都会很好地输出到mule_ee.log和第三个应用程序日志,这是最后部署的应用程序。第一个和第二个应用程序的应用程序日志记录被破坏。我们可以在部署时查看日志,但是这里的logger
Blog没有显示如何加载log4j配置的配置部分,请查看是否有任何提示。是的,我已经阅读了这些内容,但没有任何结果。根据配置,一切都设置正确。刚刚遇到此。尝试添加
-M-Dlog4j.debug=true
以验证正在拾取哪些log4j文件。是的,我为每个应用程序都有一个唯一的值。我只发布了一个应用程序日志的示例。每三个都有相同的配置,但日志文件名不同。我试过append=“true”,但运气不好。
<RollingFile name="file"
             fileName="${sys:mule.home}/logs/appt2est.log"
             filePattern="${sys:mule.home}/logs/app2test.%d{yyyy-MM-dd}" append="true">

  <PatternLayout
          pattern="&lt;%-4d{DATE}&gt; &lt;%-5p&gt; &lt;%t&gt; &lt;%m&gt; %n" />
  <TimeBasedTriggeringPolicy />
</RollingFile>