在公司的项目中用logback作日志输出操做,一个logger日志会同时显示在界面,也会记录到文件.经过仔细阅读官方文档,发现能够在不影响界面的输出状况下改变文件的输出级别.具体以下: app
<appender name="DEVICE_MESSAGE_DEBUG" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>log/device/message.txt</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- rollover daily --> <fileNamePattern>log/device/message-%d{yyyy-MM-dd}.%i.txt</fileNamePattern> <maxHistory>10</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <!-- or whenever the file size reaches 100MB --> <maxFileSize>10MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n </pattern> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>ERROR</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> </appender> <logger name="com.dongluhitec.card.hardware" level="INFO"> <appender-ref ref="DEVICE_MESSAGE_DEBUG"/> </logger>这样logger仍是会接收info级别的日志,但输出到文件时,会过滤ERROR级别如下的日志.