Как записать аудит приложения в отдельный файл на Wildfly 8

У меня есть приложение Java EE, работающее на Wildfly 8, в котором я хочу включить ведение журнала аудита. Используя InterceptorBinding и Interceptor, я могу перехватывать все соответствующие вызовы API.

Я хочу записать эти вызовы аудита в отдельный файл журнала аудита. Я попытался реализовать это с помощью logback, и с помощью второго ответа вэтот вопрос Мне наконец удалось это сделать. Первый ответ, то есть отключение регистрации системы, не сработал. Однако, хотя это решение успешно записывает мою контрольную трассировку в отдельный файл, все остальные журналы перестали записываться в их файлы по умолчанию и выводились только на консоль.

Чего я хочу добиться, так это чтобы все обычные записи в журнал записывались в обычный файл (то есть server.log), как это делается по умолчанию, но иметь собственные сообщения журнала аудита в отдельном файле (также меняются ежедневно, переименовываясь). старый файл на дату его написания).

Делается ли это с Logback, log4j, собственной системой ведения журнала Wildfly или даже с журналом аудита CLI Wildfly, не имеет значения, пока оно достигает цели, с минимальными издержками. На данном этапе я рассматриваю возможность записи его в свой собственный файл с простым выходным потоком, но это кажется излишним, когда есть решения, которые должны сделать это гораздо более эффективно.

Вот как выглядит мой файл logback:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <appender name="AUDIT-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>/Applications/wildfly/standalone/log/logback/audit/audit.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>logFile.%d{yyyy-MM-dd}.log</FileNamePattern>
        </rollingPolicy>
        <encoder>
            <pattern>%d{HH:mm:ss.SSS}: - %msg%n</pattern>
        </encoder>
    </appender>
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>/Applications/wildfly/standalone/log/logback/server.log</File>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>logFile.%d{yyyy-MM-dd}.log</FileNamePattern>
        </rollingPolicy>
        <encoder>
            <Pattern>%d{HH:mm:ss.SSS} %-4relative [%thread] %-5level %logger{35} - %msg%n</Pattern>
        </encoder>
    </appender>
    <logger name="audit" level="INFO" additivity="false">
        <appender-ref ref="AUDIT-FILE"/>
    </logger>
    <logger name="org.jboss.resteasy.core.ExceptionHandler" level="ALL">
        <appender-ref ref="FILE" />
    </logger>
    <root level="ALL">
        <appender-ref ref="FILE"/>
    </root>
</configuration>

Ответы на вопрос(1)

Ваш ответ на вопрос