spring boot 默认支持的日志为logback 且已经内置了logback依赖,不需要我们在进行导入,可以直接使用
Spring Boot中默认配置ERROR
、WARN
和INFO
级别的日志输出到控制台 当然你可以在application.properties中指定 logging.level.你的包名=要输出的日志级别,比如 logging.level.com.example.demo=info
默认情况下,Spring Boot将日志输出到控制台,不会写到日志文件。如果要编写除控制台输出之外的日志文件,则需在application.properties中设置logging.file或logging.path属性。
- logging.file,设置文件,可以是绝对路径,也可以是相对路径。如:
logging.file=my.log
- logging.path,设置目录,会在该目录下创建spring.log文件,并写入日志内容,如:
logging.path=/var/log
如果只配置 logging.file,会在项目的当前路径下生成一个 xxx.log 日志文件。
如果只配置 logging.path,在 /var/log文件夹生成一个日志文件为 spring.log
注:二者不能同时使用,如若同时使用,则只有logging.file生效
如果你需要更加个性化的配置日志则需要以下配置
在springboot resource目录下创建 logback-spring.xml spring boot默认会扫描 *-spring.xml 的文件
ps:当然你也可以自定义命名 只需要在配置文件中加入 logging.config=classpath:你的名字.xml 如 logging.config=classpath:logging-config.xml
然后在文件中加入
<?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"> <!-- <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>ERROR</level> </filter>--> <encoder>
//控制台的日志格式 <pattern>%d{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>
//存放的文件路径,他会放在你项目下的poslog文件夹下,当然你也可以自己指定,生成的文件名为 日期.log poslog/%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> <root level="DEGUG,ERROR"> <appender-ref ref="console" /> <appender-ref ref="logFile" /> </root> <!-- <logger name="com.pos" level="INFO" additivity="false"> <appender-ref ref="console"/> </logger> --> </configuration>
参考 https://juejin.im/post/58f86981b123db0062363203 ps: 这一篇讲的非常详细
https://www.cnblogs.com/yumi3322/p/7099295.html