Настройка профиля регистрации Wildfly ( logger.debug("test"))
Я хотел бы создать профиль для журналов моего приложения
Мне нужно использовать logger.debug()
но если я положу в standalone.xml
файл DEBUG я получаю слишком много строк
от <level name="INFO"/>
в <level name="DEBUG"/>
.....................
<subsystem xmlns="urn:jboss:domain:logging:3.0">
<console-handler name="CONSOLE">
<level name="DEBUG"/>
<formatter>
<named-formatter name="COLOR-PATTERN"/>
</formatter>
</console-handler>
<periodic-rotating-file-handler name="FILE" autoflush="true">
<formatter>
<named-formatter name="PATTERN"/>
</formatter>
<file relative-to="jboss.server.log.dir" path="server.log"/>
<suffix value=".yyyy-MM-dd"/>
<append value="true"/>
</periodic-rotating-file-handler>
<logger category="com.arjuna">
<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="DEBUG"/>
<handlers>
<handler name="CONSOLE"/>
<handler name="FILE"/>
</handlers>
</root-logger>
<formatter name="PATTERN">
<pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>
</formatter>
<formatter name="COLOR-PATTERN">
<pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>
</formatter>
</subsystem>
......................
Я могу создать профиль, который включает только отладку журнала моего приложения?
Я создал свой профиль и добавил в свой MANIFEST.MF, но он не работает
<logging-profiles>
<logging-profile name="accounts-app-profile">
<console-handler name="CONSOLE">
<level name="DEBUG"/>
<formatter>
<named-formatter name="COLOR-PATTERN"/>
</formatter>
</console-handler>
<file-handler name="ejb-trace-file">
<level name="DEBUG"/>
<file relative-to="jboss.server.log.dir" path="ejb-trace.log"/>
</file-handler>
<logger category="com.company.accounts.ejbs">
<level name="DEBUG"/>
<handlers>
<handler name="ejb-trace-file"/>
</handlers>
</logger>
<formatter name="COLOR-PATTERN">
<pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>
</formatter>
</logging-profile>
MANIFEST.MF
Manifest-Version: 1.0
Logging-Profile: accounts-app-profile
Позвони в регистратор
final static Logger logger = Logger.getLogger("com.company.accounts.ejbs");
logger.debug("debug");
logger.info("info");
файл ejb-trace.log
создает, но не пишет внутри
2 ответа
Профиль регистрации не требуется для того, что вы пытаетесь сделать. Принимая категорию com.company.accounts.ejbs
и при условии, что вы хотите, чтобы сообщения из вашего приложения регистрировались в своем собственном файле, следующие команды консоли
/subsystem=logging/file-handler=ejb-trace-file:add(level=DEBUG, file={relative-to=jboss.server.log.dir, path=ejb-trace.log}, autoflush=true)
/subsystem=logging/logger=com.company.accounts.ejbs:add(level=DEBUG, handlers=[ejb-trace-file], use-parent-handlers=false)
Если вы также хотите, чтобы сообщения регистрировались в обработчике консоли или в server.log, вы можете удалить use-parent-handlers=false
атрибут или установить его true
,
Это может быть старый пост, так как я наткнулся на этот пост, чтобы решить мою проблему, которая описана выше, кто-то в будущем также может прочитать это. По этой причине я хотел бы поделиться своим ответом здесь.
В моем случае я следил за этим постом https://access.redhat.com/documentation/en-us/jboss_enterprise_application_platform/6.2/html/administration_and_configuration_guide/example_logging_profile_configuration и несколькими другими и создал <logging-profile>
в standalone.xml
файл в wildFly server
и создал MANIFEST.MF
файл вручную в \src\main\resources\META_INF
затем создается файл журнала, но содержимое журнала внутри него не записывается.
Причина в том, что мое приложение использует maven для настройки конфигурации и создания файла манифеста.
Если приложение использует maven
для конфигураций сборки или maven
плагин для создания manifest.mf
файл, то вы должны добавить приведенную ниже информацию в вашем приложении pom.xml
файл.
- если приложение использует
maven
для конфигураций сборки, затем добавьте следующие строки вpom.xml
<build> <plugins>
тег
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<archive>
<manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile>
</archive>
</configuration>
</plugin>
- если приложение использует
maven
плагин для созданияmanifest.mf
Затем добавьте следующие строки вpom.xml
<manifestEntries>
то есть в
<build>
<plugins>
<plugin>
<archive>
<manifestEntries>
<Logging-Profile>myAppLogProfile</Logging-Profile>
</manifestEntries>
после добавления этого, если вы делаете mvn clean
а также mvn install
тогда Logging-Profile: myAppLogProfile
линия будет добавлена к вашему MANIFEST.MF
файл в файле войны
Manifest-Version: 1.0
Logging-Profile: myAppLogProfile
после этого, когда я повторно разверну его, в файле журнала будет содержимое журнала.
Надеюсь, это кому-нибудь поможет.
Не меняйте root-logger, но добавьте категорию, соответствующую имени пакета, который вы хотите отладить