Отключить журналы уровня DEBUG в logback.xml, сохраняя журналы уровня INFO и ERROR.

Мой logback.xml выглядит так:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <jmxConfigurator/>
  <statusListener class="ch.qos.logback.core.status.NopStatusListener"/>

  <property name="LOG_DIR" value="/tmp/logs"/>
  <springProperty name="appName" source="spring.application.name"/>
  <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
    <layout class="ch.qos.logback.classic.PatternLayout">
      <Pattern>
        some pattern
      </Pattern>
    </layout>
  </appender>

  <logger additivity="false" level="DEBUG"
    name="xyz">
    <appender-ref ref="STDOUT"/>
  </logger>
  <root level="ERROR">
    <appender-ref ref="STDOUT"/>
  </root>
</configuration>

Я пытаюсь отключить журналы DEBUG для всего приложения и не смог найти способ сделать это. Я хочу распечатать журналы уровня INFO, ERROR.


person Aali M    schedule 06.11.2019    source источник


Ответы (1)


Вы можете оставить единственный корневой регистратор с уровнем INFO. Это означает, что он будет регистрировать только INFO, WARN и ERROR. Однако кажется, что WARN — это не то, что вы хотели бы регистрировать.

Или вы можете использовать фильтры, такие как LevelFilter< /сильный>. Ниже приведен пример из документации, которую вы можете найти по предоставленной ссылке.

<configuration>
  <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
    <filter class="ch.qos.logback.classic.filter.LevelFilter">
      <level>INFO</level>
      <onMatch>ACCEPT</onMatch>
      <onMismatch>DENY</onMismatch>
    </filter>
    <encoder>
      <pattern>
        %-4relative [%thread] %-5level %logger{30} - %msg%n
      </pattern>
    </encoder>
  </appender>
  <root level="DEBUG">
    <appender-ref ref="CONSOLE" />
  </root>
</configuration>
person Alexey R.    schedule 07.11.2019