0
我们可以在appender级别设置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>
我可以知道附加器将执行写入部件(输出).logger将其重定向到正确的appender与它的属性。
在我的情况下,我需要在不同的记录器级别(INFO/ERROR)中使用相同的包来提供不同文件中的数据。
我的目标是在一个文件中写入ERROR数据,在另一个文件中写入INFO数据。