Проблема, с которой я сталкиваюсь, заключается в том, что у меня есть приложение, использующее файл jar (jar1), содержащий logback. xml (имеющий папку назначения для файлов журналов), а другое приложение также использует файл jar (jar2) содержащий другой журнал. xml (имеющий другую папку назначения для своих файлов журнала). Для первого приложения я использую загрузчик классов с конфигурацией общего файла jar1. Теперь в этом случае журналы объединяются. Некоторые журналы создаются в первой папке назначения для второго приложения и наоборот. Я использую WebSphere9. Есть ли способ, чтобы файлы журналов создавались в указанной папке назначения c, без объединения журналов?
Сохраняя первый загрузчик классов, я попытался использовать второй загрузчик классов с конфигурацией файла общего доступа jar2 , для второго применения. Но в этом случае любое из приложений работает. Таким образом, это решение было исключено.
Logback. xml первого приложения:
<?xml version="1.0" encoding="UTF-8"?>
<appender name="consoleAppender"
class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%-50(%level %logger{35}) cn=%contextName - %msg%n</Pattern>
</layout>
</appender>
<appender name="mainAppender"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${USR_HOME}/yoda.log</file>
<rollingPolicy
class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>${USR_HOME}/yoda.%i.log</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>20</maxIndex>
<cleanHistoryOnStart>true</cleanHistoryOnStart>
</rollingPolicy>
<triggeringPolicy
class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>50MB</maxFileSize>
</triggeringPolicy>
<encoder
class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern%-50(%level %logger{35}) cn=%contextName - %msg%n</Pattern>
</encoder>
<prudent>false</prudent>
</appender>
<root name="MAIN_LOGGER" level="ERROR" additivity="true">
<appender-ref ref="mainAppender" />
</root>
Logback. xml для второго применения:
<?xml version="1.0" encoding="UTF-8"?>
<appender name="consoleAppender"
class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%-50(%level %logger{35}) cn=%contextName - %msg%n</Pattern>
</layout>
</appender>
<appender name="mainAppender"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${AG_HOME}/kenobi.log</file>
<rollingPolicy
class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>${AG_HOME}/kenobi.%i.log</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>20</maxIndex>
<cleanHistoryOnStart>true</cleanHistoryOnStart>
</rollingPolicy>
<triggeringPolicy
class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>50MB</maxFileSize>
</triggeringPolicy>
<encoder
class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern%-50(%level %logger{35}) cn=%contextName - %msg%n</Pattern>
</encoder>
<prudent>false</prudent>
</appender>
<root name="MAIN_LOGGER" level="ERROR" additivity="true">
<appender-ref ref="mainAppender" />
</root>