📜  Spring Boot-日志记录(1)

📅  最后修改于: 2023-12-03 15:05:16.013000             🧑  作者: Mango

Spring Boot-日志记录

在开发过程中,日志记录是非常重要的一环,可以记录应用程序的状态和运行情况,方便开发者进行故障排查和问题的解决。Spring Boot内置了日志框架,使用起来也非常方便。

Spring Boot内置日志框架

Spring Boot内置了三种日志框架:

  • Logback
  • Log4j2
  • JDK Loggings

其中,Logback是默认的日志框架。在Spring Boot应用中,我们只需要引入相应的日志框架依赖,就可以使用对应的日志框架记录日志。

配置日志框架

在Spring Boot应用中,我们可以使用application.properties或application.yml文件来配置日志框架。下面是一些常用的配置项:

配置日志输出级别
logging:
  level:
    root: info
    com.example: debug

上面的配置将日志输出级别分别设置为info和debug。root表示根日志,com.example表示com.example包下的日志。

配置日志输出位置
logging:
  file:
    name: myapp.log

上面的配置将日志输出到myapp.log文件中。

配置日志格式
logging:
  pattern:
    console: "%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{50} - %msg%n"

上面的配置将控制台输出的日志格式设置为指定格式。

使用日志框架记录日志

在Spring Boot应用中,使用日志框架记录日志也非常简单。我们只需要使用相应的日志框架提供的Logger对象即可。

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

@Controller
public class MyController {

    private final Logger logger = LoggerFactory.getLogger(this.getClass());

    @RequestMapping("/")
    @ResponseBody
    public String home() {
        logger.info("Hello, this is my app!");
        return "Hello World!";
    }
}

上面的代码演示了在控制器中使用Logger对象记录日志。我们使用LoggerFactory.getLogger(this.getClass())方法创建Logger对象,并使用logger.info()方法记录日志。根据日志输出级别的设置,Logger对象会将日志输出到相应的位置。

总结

Spring Boot内置了日志框架,使用起来非常方便。我们只需要在应用中引入相应的日志框架依赖,就可以使用对应的日志框架记录日志。同时,应该根据实际应用需求,合理配置日志输出级别、输出位置和输出格式,方便故障排查和问题解决。