springboot 在引入spring-boot-starter-web时,默认的引入logback日志包,在项目中就不需要额外引入.
日志级别从低到高分为:
TRACE
<DEBUG
<INFO
<WARN
<ERROR
<FATAL
。
在resource目录下添加logback-spring.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"> <encoder> <pattern>%d %contextName [%thread] %-5level %logger - %msg%n</pattern> </encoder> </appender> <!--输出到文件 每天生成一个日志文件,保存30天的日志文件。--> <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOG_PATH}/demo-%d.log</fileNamePattern> <maxHistory>30</maxHistory> </rollingPolicy> <encoder> <pattern>%d %contextName [%thread] %-5level %logger - %msg%n</pattern> </encoder> </appender> <root level="info"> <appender-ref ref="console"/> <appender-ref ref="file"/> </root> <!-- 测试环境+开发环境. 多个使用逗号隔开. --> <springProfile name="test,dev"> <logger name="com.example.springboot" level="info"/> </springProfile> <!-- 定义生产环境日志输出级别--> <springProfile name="pro"> <logger name="com.example.springboot" level="info"/> </springProfile> <!--输出执行的sql语句--> <logger name="com.example.springboot.dao" level="debug"/> </configuration>
说明:该文件定义了一个控制台输出 一个文件输出(最长保存日志为30天)。指定了不同环境下日志输出级别。最后一句输出执行的输出SQL信息 。
${LOG_PATH} 该变量会获取 logging.path的值
二、定义日志文件输出位置
application.yaml 文件中添加如下内容:
logging: path: e:\\logs\\springboot\\logs
三、定义测试Controller
LogController
package com.example.springboot.controller; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/log") public class LogController { private final Logger log = LoggerFactory.getLogger(this.getClass()); @RequestMapping("/test") public void log() { log.debug("debug"); log.info("info"); log.warn("warn"); log.error("error"); } }
可以修改日志配置文件日志级别, 进行测试。就不再具体展示.
详细内容参考:Spring Boot 日志配置