WebSphere Application Server中的日志记录问题?

时间:2019-05-31 07:48:05

标签: spring-boot websphere logback log4j2 spring-logback

我遇到了与日志记录相关的问题,其中应用程序A的日志消息被写入应用程序B的日志文件。

应用程序A和B在IBM WebSphere Application Server V9的同一实例上运行。

应用程序A正在使用spring框架和log4j2。

应用程序B正在使用Spring Boot和Logback。

应用程序A中的代码:

应用程序A中很少有Java类使用Java util记录器,很少使用log4j的记录器。 仅Java uti记录器消息被写入应用程序B的日志文件中。

import java.util.logging.Logger;

public class Utility {
    private static final Logger LOGGER = Logger.getLogger(Utility.class.getName());
    ......

    someMethod() {
        LOGGER.info("some message from Application A");
    }

......

应用B中的代码

此应用程序中的所有java类都使用记录器,如下所示

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

....
public class PNMapingController {
    private static final Logger LOGGER = LoggerFactory.getLogger(PNMapingController.class);
    .....

    someMethod() {
        LOGGER.info("some message from Application B");
    }
.....

应用程序B登录配置文件

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
    <property name="LOG_FILE" value="${LOG_PATH}/JOB.log"/>
    <property name="FILE_LOG_PATTERN" value="%d{dd-MM-yyyy HH:mm:ss.SSS} %magenta([%thread]) %highlight(%-5level) %logger{36}.%M - %msg%n"/>

     <springProfile name="dev">
        <include resource="org/springframework/boot/logging/logback/console-appender.xml"/>
        <appender name="ROLLING-FILE"
                  class="ch.qos.logback.core.rolling.RollingFileAppender">
            <encoder>
                <pattern>${FILE_LOG_PATTERN}</pattern>
            </encoder>
            <file>${LOG_FILE}</file>
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.log</fileNamePattern>
            </rollingPolicy>
        </appender>
        <root level="INFO">
            <appender-ref ref="CONSOLE"/>
            <appender-ref ref="ROLLING-FILE"/>
        </root>
    </springProfile>

</configuration>

在应用程序属性文件中设置了LOG_PATH

因此,我可以在JOB.log(属于应用程序B)中看到来自应用程序A的日志消息,“来自应用程序A的某些消息”。

0 个答案:

没有答案