记录不同级别的不同文件 [英] Logback different files for different levels
本文介绍了记录不同级别的不同文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在logback.xml中有这个appender
I have this appender in my logback.xml
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>logFile.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>logFile.%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>5</maxHistory>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{35} - %msg%n</Pattern>
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="FILE" />
</root>
所以目前我将所有日志保存到一个文件中。我怎么能这样做,一个文件只保存错误日志而另一个文件保存所有其他文件?
So at the moment I am saving all my logs to one file. How can I make it like, one file saves only error logs and other saves all other?
我想在我的代码中只使用一个logger实例,像这样:
And I want to keep using only 1 instance of logger in my code, something like this:
private static final Logger log = LoggerFactory.getLogger(Main.class);
推荐答案
开始寻找回溯类别,找到过滤器。
Started looking for logback categories, found filters.
只需将过滤器描述添加到您的appender:
Just add filter description to your appender:
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
这篇关于记录不同级别的不同文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文