首页 文章

Mule ESB Log4j2支持

提问于
浏览
0

Mule ESB是否支持log4j2?我试图在我的esb应用程序中添加log4j2.xml,但即使添加了log4j2.xml,我的mule esb应用程序默认为自己的log4j 1.2实现 . 我希望我的esb应用程序读取我的log4j2.xml文件,并在我的log4j2.xml中指定的参数中使用/使用,如果存在log4j2.xml文件,那么它不应该读取它自己的log4j 1.2实现日志属性文件 .

我在使用mule esb app实现log4j2(.xml)时遇到问题 . 任何帮助将非常感谢 .

5 回答

  • 0

    mule esb的最新版本支持log4j2 . 希望版本可能紧密耦合,这可能是它可能无法工作的原因 .

  • 0

    Log4j2有一个适配器允许针对log4j-1.2 API编码的应用程序使用log4j2实现 . (另见FAQ . )

    实现这一目标的步骤:

    • 从类路径中删除log4j-1.2.x.jar

    • 将log4j-1.2-api-2.0.jar jar添加到类路径中 .

    • 确保log4j-api-2.0.jar和log4j-core-2.0.jar在类路径中

    现在log4j-1.2 API和log4j2 API都将委托给log4j2实现 . 示例配置为here .

  • 0

    从Mule-3.6.0开始隐式支持Log4j2 . 欲了解更多信息,请浏览此链接Asynchronous Logging in Mule

  • 0

    Mule esb支持log4j . 检查您是否导入了slf4j库 .

    您需要创建/重命名log4j2-test.xml

  • 0

    这些是我的log4j2.xml和我的pom.xml文件,我使用的是mule v7.1 . 我希望它有所帮助 .

    log4j2.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <Configuration status="debug">
        <Properties>
            <Property name="log-path">/my_path/my_logs/my_app</Property>
            <Property name="app-id">my_app</Property>
        </Properties>
    
        <Appenders>
            <RollingFile name="file-log" fileName="${log-path}/${app-id}.log"
                filePattern="${log-path}/${app-id}-%d{yyyy-MM-dd}.log">
                <PatternLayout>
                    <pattern>[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n
                    </pattern>
                </PatternLayout>
                <Policies>
                    <TimeBasedTriggeringPolicy interval="1"
                        modulate="true" />
                </Policies>
            </RollingFile>
    
            <Console name="console" target="SYSTEM_OUT">
                <PatternLayout
                    pattern="[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n" />
            </Console>
        </Appenders>
        <Loggers>
    
            <Logger name="org.apache.logging.log4j" level="warn" additivity="false">
                <appender-ref ref="file-log" />
                <appender-ref ref="console" />
            </Logger>
    
            <Root level="info" additivity="false">
                <appender-ref ref="file-log" />
                <appender-ref ref="console" />
            </Root>`enter code here`
        </Loggers>
    
    </Configuration>
    

    pom.xml

    <dependency>
       <groupId>org.apache.logging.log4j</groupId>
       <artifactId>log4j-api</artifactId>
       <version>2.0</version>
      </dependency>
      <dependency>
       <groupId>org.apache.logging.log4j</groupId>
       <artifactId>log4j-core</artifactId>
       <version>2.0</version>
      </dependency>
    

相关问题