можем ли мы установить уровень ERROR и INFO на уровне приложения?.
Я использую logback.xml
мой logback.xml
<configuration>
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%5p [%t] %m%n</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>DEBUG</level>
</filter>
</appender>
<appender name="default-out" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- Rolling file appender for rolling files -->
<param name="File" value="logs/app-track-log.log" />
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>logs/app-track-log-%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- keep 30 days' worth of history -->
<maxHistory>30</maxHistory>
</rollingPolicy>
<param name="encoding" value="UTF-8" />
<encoder>
<pattern>%-30([web] %d{HH:mm:ss.SSS} [%thread]) %-5level %logger{32} - %msg%n</pattern>
</encoder>
</appender>
<appender name="error-out" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- Rolling file appender for rolling files -->
<param name="File" value="logs/error/app-error.log" />
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>app-error.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- keep 30 days' worth of history -->
<maxHistory>30</maxHistory>
</rollingPolicy>
<param name="encoding" value="UTF-8" />
<encoder>
<pattern>%-30([web] %d{HH:mm:ss.SSS} [%thread]) %-5level %logger{32} - %msg%n</pattern>
</encoder>
</appender>
<!--here the logger to initiate the write operation -->
<logger name="org.company.controllers" level="ERROR" >
<appender-ref ref="error-out" />
</logger>
<logger name="org.company.controllers" level="INFO" >
<appender-ref ref="default-out" />
</logger>
<root level="OFF">
<appender-ref ref="default-out" />
</root>
</configuration>
Я узнаю, что приложение будет выполнять часть записи (вывод). Регистратор перенаправит его в правильное приложение со своим свойством.
Здесь, в моем случае, мне нужно, чтобы один и тот же пакет использовался на другом уровне регистратора (INFO/ERROR) для предоставления данных в другом файле.
Моя цель - записать данные ERROR в один файл и данные INFO в другой файл.