SpringBoot 使用 slf4j+logback 进行日志管理

SpringBoot 使用 slf4j+logback 进行日志管理

一、基础知识:

1.日志系统

  系统日志是记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。系统日志包括系统日志、应用程序日志和安全日志。– 百度百科

  日志的管理是系统很重要的一部分,千万不可忽略其重要性。完整的日志将会在系统维护中起着异常重要的作用,就好像磨刀不误砍柴工一样,日志就像对系统进行分析的工具,工具便捷了,对系统分析起来就能达到事半功倍的效果。

  现代的应用程序已经离不开日志系统,所以学会正确高效地配置一套日志系统是一位后端开发工程师必备的技能。本篇文章我将逐步讲解使用 slf4j+logback 来对 SpringBoot 项目进行日志管理,仅作为参考,欢迎大家提出意见。

2.主流框架

  当今Java程序中常见的日志框架有:Log4j、J.U.L(jdk-logging)、J.C.L(commons-logging)、Slf4j、Logback、Log4j2。一共是2个日志接口标准和4个具体的实现。具体内容可参见大佬文章 — Java日志框架演化历史

  之前最流行的搭配是使用 J.C.L+Log4j 的形式,从目前趋势来看,越来越多的开源项目逐步转向了 slf4j+logback,所以本篇文章主要讲解 slf4j+logback 的实现方式,其它实现形式大家感兴趣可以自行百度。

3.logback

  logback 是一个开源的日志组件,同样是由log4j的作者设计完成的,拥有更好的特性,是用来取代log4j的一个日志框架。它拥有更快的实现、更充分的测试、更充分的文档、更细粒度的日志管理,所以让它现在变得越来越受欢迎。

二、在 SpringBoot 项目中使用 logback :

1.添加依赖

  logback 有三个主要模块:   

    logback-core:是logback-access,logback-classic两个模块的基础。

    logback-classic:它是log4j的一个改良版本,同时它完整实现了slf4j API,使我们可以在其他日志系统,如log4j和JDK14 Logging中进行转换。

    logback-access:访问模块和Servlet容器集成,为tomcat等提供通过Http来访问日志的功能。

  如果项目使用了 spring-boot-starter,那么依赖已经添加不必再手动引入,否则需要自己手动添加依赖:

  

   否则要手动添加maven依赖:

<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-api</artifactId>
  <version>1.7.21</version>
</dependency>

<dependency>
  <groupId>ch.qos.logback</groupId>
  <artifactId>logback-core</artifactId>
  <version>1.1.7</version>
</dependency>
<dependency>
  <groupId>ch.qos.logback</groupId>
  <artifactId>logback-classic</artifactId>
  <version>1.1.7</version>
</dependency>
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » SpringBoot 使用 slf4j+logback 进行日志管理