Я настроил свой сервер WildFly 18 в формате доменного режима, и мы используем регистратор log4j. Когда я проверил файл server.log, все журналы из log4j регистрируются после собственного формата регистратора wildfly. Как и в приведенной ниже строке, 1-я дата и уровень журнала взяты из журналов сервера, а следующий формат даты и уровень журнала, а сообщение журнала исходит от log4j.
2021-03-19 00:13:06,623 INFO 2021-03-19 00:13:06,601 INFO [com.app.connection.service] CurrentThreadID=436 On
Я много ищу ... Я нашел так много конфигураций, связанных с автономным режимом, и некоторые говорили, что эти конфигурации можно выполнить в domain.xml, но ничего не сработало.
У меня есть следующая конфигурация в domain.xml
<subsystem xmlns="urn:jboss:domain:logging:8.0">
<custom-handler name="CUSTOM-FILE" class="org.jboss.logmanager.handlers.PeriodicSizeRotatingFileHandler" module="org.jboss.logmanager">
<formatter>
<named-formatter name="MY-PATTERN"/>
</formatter>
<properties>
<property name="maxBackupIndex" value="24"/>
<property name="rotateSize" value="10000000"/>
<property name="suffix" value=".yyyy-MM-dd-HH"/>
<property name="append" value="true"/>
<property name="fileName" value="${jboss.server.log.dir}/server.log"/>
</properties>
</custom-handler>
<logger category="com.arjuna">
<level name="WARN"/>
</logger>
<logger category="io.jaegertracing.Configuration">
<level name="WARN"/>
</logger>
<logger category="org.jboss.as.config">
<level name="DEBUG"/>
</logger>
<logger category="sun.rmi">
<level name="WARN"/>
</logger>
<root-logger>
<level name="INFO"/>
<handlers>
<handler name="CUSTOM-FILE"/>
</handlers>
</root-logger>
<formatter name="PATTERN">
<pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p %s%e%n"/>
</formatter>
<formatter name="MY-PATTERN">
<pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p %s%e%n"/>
</formatter>
<formatter name="COLOR-PATTERN">
<pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p %s%e%n"/>
</formatter>
</subsystem>
В log4j.xml у меня есть приложение консоли, как показано ниже, и этот log4j.xml присутствует внутри каталога модулей по пути wildfly18.0.1\modules\org\apache\logging\log4j\main\log4j2-props
<Console name="Console">
<PatternLayout pattern="%d %-5p [%c] %m\n" />
</Console>
Следующие вещи, которые я пробовал:
Добавлены теги внутри подсистемы логирования
<add-logging-api-dependencies value="false"/> <use-deployment-logging-config value="false"/>
Добавлены регистраторы
<logger category="stdout" use-parent-handlers="false">
<level name="INFO"/>
<handlers>
<handler name="CUSTOM-FILE"/>
</handlers>
</logger>
- Исключенные подсистемы и модули из развертываний. Добавлено следующее в META-INF\jboss-deployment-structure.xml
Мы используем файл развертывания EAR
<deployment>
<exclude-subsystems>
<subsystem name="logging"/>
</exclude-subsystems>
<exclusions>
<module name="org.apache.commons.logging"/>
<module name="org.apache.log4j"/>
<module name="org.jboss.logging"/>
<module name="org.jboss.logging.jul-to-slf4j-stub"/>
<module name="org.jboss.logmanager"/>
<module name="org.jboss.logmanager.log4j"/>
<module name="org.slf4j"/>
<module name="org.slf4j.impl"/>
</exclusions>
</deployment>
Итак, пожалуйста, может ли кто-нибудь помочь мне с правильной конфигурацией для настройки режима домена?
Заранее спасибо...