-
springboot框架已经引入了logback依赖,因此不需要再加入依赖,springboot会自动查找类路径下的
logback-spring.xml文件 -
在类上加
@Slf4j注解,则默认生成了一个名为log的Logger对象,直接使用就可以了 -
在
logback.xml中配置的日志是默认级别,application.properties中配置的优先级最高 -
mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl不受日志框架约束 -
新建
logback.xml文件放在resources目录下,内容如下:<?xml version="1.0" encoding="UTF-8"?> <configuration> <property name="log.project" value="yh-api-service"/> <property name="log.home" value="logs"/> <property name="log.level" value="INFO"/> <property name="log.max.file.size" value="50MB"/> <property name="log.max.history" value="360"/> <!-- 定义日志信息的格式--> <property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level [%logger.%method:%line] >>> %msg %n" /> <!-- 控制台输出 --> <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <pattern>${FILE_LOG_PATTERN}</pattern> <!--日志格式 --> <charset>utf8</charset> </encoder> </appender> <!--日志写入文件 --> <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!--存储路径--> <file>${log.home}/${log.project}.log</file> <!--归档策略 --> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <FileNamePattern>${log.home}/${log.project}_%d{yyyy-MM-dd}.log</FileNamePattern> <MaxHistory>${log.max.history}</MaxHistory> </rollingPolicy> <!--日志格式 --> <encoder> <pattern>${FILE_LOG_PATTERN}</pattern> </encoder> </appender> <!--日志要输出的appender--> <root level="info"> <appender-ref ref="console" /> <appender-ref ref="file" /> </root> </configuration>