在springboot中默认的日志是使用logback.xml进行日志输出的,一下是一些日志的说明。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xml>
<configuration>
<!-- 控制台输出 -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<!-- 输出文件格式,主要是 日期和后面 %msg%n,其他可以省略 -->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<!-- /// -->
<!--第一种日志文件 全部只输出到一个文件上,使用固定的文件名称,格式等。 -->
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<!-- 文件的名字和位置 -->
<file>testFile.log</file>
<!--文件存在则输出的内容是否是追加,默认是true的 -->
<append>true</append>
<!-- 将 immediateFlush 设置为 false 以获得更高的日志记录吞吐量 -->
<immediateFlush>true</immediateFlush>
<!-- 文件输出格式 -->
<encoder>
<pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
</encoder>
</appender>
<!-- /// -->
<!-- 第二种 每次启动程序都会新建一个文件,一般用于开发阶段 -->
<timestamp key="bySecond" datePattern="yyyyMMdd'T'HHmmss"/>
<!--第二种日志文件 输出到一个文件上,使用固定的文件名称,格式等。 -->
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<!-- 文件的名字和位置 -->
<file>${bySecond}.log</file>
<!--文件存在则输出的内容是否是追加,默认是true的 -->
<append>true</append>
<!-- 将 immediateFlush 设置为 false 以获得更高的日志记录吞吐量,默认true就好,不要需要改 -->
<immediateFlush>true</immediateFlush>
<!-- 文件输出格式 -->
<encoder>
<pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
</encoder>
</appender>
<!-- /// -->
<!-- 按每个文件大小自动创建新的文件, 定义每个文件的大小,存放天数,日志总大小这些事必须设置的。 -->
<appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>mylog.log</file>
<encoder>
<pattern>%msg%n</pattern>
</encoder>
<!-- 定义文件滚动规则 -->
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!-- 每个文件的格式, %d 表示文件的格式,这个格式simpleDataformat类的格式一样的,, %i 声明文件达到大小后自动创建一个新的文件 这两个标签都是必须的。 -->
<fileNamePattern>mylog-%d{yyyy-MM-dd }.%i.log</fileNamePattern>
<!-- 每个文件 100MB,保存时间60天,总日志大小不超过20GB,超过会自动删除旧日志 -->
<maxFileSize>100MB</maxFileSize>
<maxHistory>60</maxHistory>
<totalSizeCap>20GB</totalSizeCap>
</rollingPolicy>
</appender>
<!-- // -->
<!-- 按照每天生成错误日志文件 -->
<appender name="FILEERR" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- 进行过滤 ,专门保存错误日志,其他配置文件都一样 -->
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<!-- level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,
如果未设置此属性,那么当前logger将会继承上级的级别 -->
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
<file>error.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<maxFileSize>10MB</maxFileSize>
<maxHistory>60</maxHistory>
<totalSizeCap>2GB</totalSizeCap>
</rollingPolicy>
</appender>
<!-- 日志输出级别。 -->
<root level="DEBUG">
<!-- 上面的appender标签是声明日志的输出位置和格式,具体是否使用 这里面引用, -->
<appender-ref ref="FILE" />
</root>
</configuration>