0

我在 Apache Tomcat 中运行 Mule 并使用 Log4j 进行日志记录。但我无法将每个应用程序记录到不同的文件中。我知道当 Mule 以独立模式运行时可以完成。在这种情况下是否可以为每个应用程序创建一个日志文件?

这是我使用的 log4j.xml 配置:

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
        <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
                <layout class="org.apache.log4j.PatternLayout">
                     <param name="ConversionPattern"
                        value="[%d{dd-MM-yyyy hh:mm:ss:sss}] %5p %c{2}: %m%n" />
                </layout>
        </appender>

        <appender name="ASYNC" class="org.apache.log4j.AsyncAppender">
                <appender-ref ref="FILE"/>
        </appender>

        <appender name="FILE" class="org.apache.log4j.RollingFileAppender">
                <param name="File" value="${catalina.base}/logs/MYAPP.log"/>
                <param name="MaxFileSize" value="100MB"/>
                <param name="MaxBackupIndex" value="100"/>
                <layout class="org.apache.log4j.PatternLayout">
                     <param name="ConversionPattern"
                        value="[%d{dd-MM-yyyy hh:mm:ss:sss}] %5p %c{2}: %m%n"/>
                </layout>
        </appender>

        <root>
                <priority value="INFO"/>
                <appender-ref ref="CONSOLE"/>
                <appender-ref ref="ASYNC"/>                
        </root>
</log4j:configuration>
4

2 回答 2

0

每个应用程序的 OOTB 日志记录功能是仅由 mule Standaone 提供的功能之一(如此所述)

话虽如此,您可以利用 log4j 配置来实现类似的结果。为此,您必须将自定义 log4.properties(或 log4.xml)文件添加到使用FileAppender的 webapp并根据您的需要进行配置

于 2012-08-08T09:28:47.930 回答
0

在您的示例中,您只声明了一个附加程序“文件”。

当您运行多个应用程序时,您可以声明附加的附加程序,以根据包名称显示信息。您仍然会在主日志文件中保留一些信息,这些信息与 org.mule... 包中的错误有关。我想这就是你所做的。

于 2014-04-10T08:38:27.680 回答