RollingFileAppender配置
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<!-- 自定義屬性 可以通過${name}進行引用-->
<property name="pattern" value="[%-5level] %d{yyyy-MM-dd HH:mm:ss} %c %M
%L [%thread] %m %n"/>
<!--
日誌輸出格式:
%d{pattern}日期
%m或者%msg爲信息
%M爲method
%L爲行號
%c類的完整名稱
%thread線程名稱
%n換行
%-5level
-->
<!-- 日誌文件存放目錄 -->
<property name="log_dir" value="d:/logs"></property>
<!--控制檯輸出appender對象-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<!--輸出流對象 默認 System.out 改爲 System.err-->
<target>System.err</target>
<!--日誌格式配置-->
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${pattern}</pattern>
</encoder>
</appender>
<!-- 日誌文件拆分和歸檔的appender對象-->
<appender name="rollFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!--日誌格式配置-->
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${pattern}</pattern>
</encoder>
<!--日誌輸出路徑-->
<file>${log_dir}/roll_logback.log</file>
<!--指定日誌文件拆分和壓縮規則-->
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!--通過指定壓縮文件名稱,來確定分割文件方式-->
<fileNamePattern>${log_dir}/rolling.%d{yyyy-MMdd}.log%i.gz</fileNamePattern>
<!--文件拆分大小-->
<maxFileSize>1MB</maxFileSize>
</rollingPolicy>
</appender>
<!--RootLogger對象-->
<root level="all">
<appender-ref ref="console"/>
<appender-ref ref="rollFile"/>
</root>
</configuration>