SpringBoot集成logback本人SpringBoot版本<parent> <artifactId>spring-boot-starter-parent</artifactId> <groupId>org.springframework.boot</groupId> <version>2.6.9</version> <relativePath/></parent> 记得引入lombok工具包(这个应该人人都会用吧(●ˇ∀ˇ●))<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId></dependency> 在SpringBoot项目resources目录下新建logback-spring.xml<?xml version="1.0" encoding="UTF-8"?><configuration> <!-- 日志路径 --> <property name="log.path" value="./logs"/> <!-- 打印日志输出格式 --> <property name="console.log.pattern" value="%red(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{36}%n) - %msg%n"/> <!-- 文件存储日志输出格式 --> <property name="file.log.pattern" value="%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36}%n - %msg%n"/> <!-- 日志控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符--> <pattern>${console.log.pattern}</pattern> </encoder> </appender> <!-- 所有日志每天保存日志文件 --> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- 当天文件格式 --> <file>${log.path}/sys-info.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 时间滚动日志文件格式 --> <FileNamePattern>${log.path}/log-info.%d{yyyy-MM-dd}.log</FileNamePattern> <!--日志文件保留天数--> <MaxHistory>30</MaxHistory> </rollingPolicy> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符--> <pattern>${file.log.pattern}</pattern> </encoder> </appender> <!-- 错误日志每天保存日志文件 --> <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- 当天文件格式 --> <file>${log.path}/sys-error.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 时间滚动日志文件格式 --> <FileNamePattern>${log.path}/log-error.%d{yyyy-MM-dd}.log</FileNamePattern> <!--日志文件保留天数--> <MaxHistory>30</MaxHistory> </rollingPolicy> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符--> <pattern>${file.log.pattern}</pattern> </encoder> <!-- 只保留ERROR级别的日志 --> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <!-- 过滤的级别 --> <level>ERROR</level> </filter> </appender> <root level="INFO"> <appender-ref ref="STDOUT"/> <appender-ref ref="FILE"/> <appender-ref ref="ERROR_FILE"/> </root></configuration>