spirngboot默认会使用logback日志框架,用SL4J接口来管理logback,log4j这些框架。
application.yml配置
logging:
level:
root: info
com.shuzhi.log: debug
org.springframework.security: warn
file:
name: log/music.log
默认会创建一个目录log,再创建一个文件music.log来保存日志
当大小超过200kb时会自动打包成music.log.2020-12-25.0.gz压缩文件,每天会新建一个日志文件。
当然我们可以超过大小时设置新建日志文件
file:
name: log/music.log
max-size: 1KB
当然也可以使用logback-spring.xml为进行配置,spring会自动识别并且忽略掉yml 中的配置信息.
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<contextName>logback</contextName>
<!--输出到控制台-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<!--按天生成日志-->
<appender name="logFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
<Prudent>true</Prudent>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>
applog/%d{yyyy-MM-dd}/%d{yyyy-MM-dd}.log
</FileNamePattern>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>
%d{yyyy-MM-dd HH:mm:ss} -%msg%n
</Pattern>
</layout>
</appender>
<logger name="com.shuzhi" additivity="false">
<appender-ref ref="console"/>
<appender-ref ref="logFile" />
</logger>
<root level="error">
<appender-ref ref="console"/>
<appender-ref ref="logFile" />
</root>
</configuration>
创建的目录是这样的,每天会生产一个log
appLog/2020-12-25/2020-12-25.log
当然,我们可以使用lombok插件来记录日志(IDEA2020.3默认集成了插件,只需要加依赖即可)
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
当使用时在类上面使用
@SLf4j
public class TestLog{
public void static void main(String args[]){
log.info("info信息");
}
}
这样方便了我们开发.