<?xml version="1.0" encoding="utf-8"?>
<configuration>
<!-- property:定义全局变量,通过${property_name}来引用 -->
<!-- %d:时间, %-5level:日志级别字符串, %thread:线程名, %file:文件名, %line:对应的行数, %logger{36}:类名, %msg:具体日志内容, %n:换行 -->
<property name="log.pattern" value="[%d] [%5level] [%thread] [%file:%line] [%logger{36}] - %msg%n" />
<!-- 输出到控制台 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
</appender>
<!-- 日志写入文件,最多保存maxHistory天,每天最多保存maxFileSize的容量,总日志文件大小最多为totalSizeCap。最好是totalSizeCap设置为大于maxHistory*maxFileSize,
否则可能存现一些问题,如本来想保留30天,但是由于总得日志文件大小提前到达了总阈值,又由于保留天数的限制,所以这种情况下,会导致新的日志不会被写入。
maxFileSize日志文件最大是多少,如果某一天内,totalSizeCap>maxFileSize,且日志文件大于maxFileSize,那么旧文件就会被删除,新的日志文件名就是按照fileNamePattern来创建。
%i就表示索引,01、02、03,一直累加,如果看不到01、02,则表示之前的日志被删除了。
-->
<appender name="logfile" class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!--测试用-->
<!-- <fileNamePattern>%d{yyyy-MM-dd}_%i.log</fileNamePattern>-->
<!--生产-->
<fileNamePattern>/data/logs/service-name/%d{yyyy-MM-dd}_%i.log</fileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留最近30天 -->
<maxFileSize>1GB</maxFileSize> <!-- 单个日志文件的最大值 -->
<totalSizeCap>31GB</totalSizeCap> <!-- 全部日志文件的总大小 -->
</rollingPolicy>
</appender>
<logger name= "com.ssf.dao.mapper.*" level="info" />
<root level="info">
<appender-ref ref="logfile" />
<appender-ref ref="console" />
</root>
</configuration>

03-27
1919
1919
07-11
1358
1358

被折叠的 条评论
为什么被折叠?



