Как решить - журнал ошибок консоли не может записать в настроенный файл Log4j2 - PullRequest
0 голосов
/ 10 октября 2019

Я попытался настроить журнал с помощью log4j2-test.xml. Я могу записать информацию и журналы ошибок, которые я записал в коде log.info () и log. error ().

Но я не могу записать ошибку консоли для исключения времени выполнения, такого как исключение нулевой точки, исключение формата числа и т. д. в файле журнала. Я использую сервер JBoss. Ошибка консоли регистрируется в журнале сервера jboss, но мне нужно войти в файл test-1.log.

Кто-нибудь может предложить способ для этого?

<?xml version="1.0" encoding="UTF-8"?>
<Configuration monitorInterval="60">
  <Appenders>
    <Console name="console" target="SYSTEM_OUT">
      <PatternLayout>
        <Pattern>test-1.log</Pattern>
      </PatternLayout>
    </Console>
    <RollingFile name="TestDailyAppender">
      <FileName>/Test/test-1.log</FileName>
      <PatternLayout>
        <Pattern>test-1.log</Pattern>
      </PatternLayout>
      <Policies>
        <TimeBasedTriggeringPolicy interval="1" modulate="true"/>
      </Policies>
      <DefaultRolloverStrategy max="20"/>
    </RollingFile>
  </Appenders>
  <Loggers>
    <logger name="com" level="info">
      <AppenderRef ref="TestDailyAppender"/>
    </logger>
    <logger name="com" level="info">
      <AppenderRef ref="TestDailyAppender"/>
    </logger>
    <Logger name="org" level="info">
      <AppenderRef ref="console"/>
    </Logger>
    <Root>
      <AppenderRef ref="TestDailyAppender"/>
    </Root>
  </Loggers>
</Configuration>

1 Ответ

0 голосов
/ 16 октября 2019

Развернуто ли ваше приложение в виде файла WAR? Если это так, файл test-1.log генерируется в нужной папке?

Если файл не генерируется при запуске сервера, добавьте jboss-deploy-structure.xmlФайл в вашем проекте, чтобы исключить запись журналов Log4j в журнал сервера jboss.

Пример:

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
<deployment>
<exclusions>
<module name="org.slf4j" />
<module name="org.slf4j.impl" />
</exclusions>
</deployment>
</jboss-deployment-structure>

Эта конфигурация xml исключит журналы slf4j и создаст тест-1. файл журнала. Надеюсь, что это помогает. Спасибо

...