logback日志框架基本知识

本文来说下logback日志框架基本知识

文章目录

  • 概述
  • logback简介
  • SpringBoot对logback的支持
  • SpringBoot的集成


概述

Spring Boot已经将logback做为默认集成的日志框架,全面了解学习是必然了。曾经log4j是流行的日志框架,现在已被它的继任者logback替代,logback更快,更小,更灵活。当然,如果你的项目中还在用System.out.println()来输出内容,那更是得行动起来,要么“逃”吧,要么改造吧。

logback日志框架基本知识_第1张图片


logback简介

先来看看logback何许人也,最直接的就是看看它的官网:https://logback.qos.ch/

logback日志框架基本知识_第2张图片

官网首页直言不讳的说它将是log4j的继承者,所以,如果还没用到或如果还不会使用,赶紧行动起来吧。

logback主要由三个模块构成:logback-core,logback-classic及logback-access

logback日志框架基本知识_第3张图片
logback-core为基础核心,另外两个均依赖它。其中logback-classic实现了简单日志门面SLF4J;logback-access主要作为一个与Servlet容器交互的模块,提供与HTTP访问相关的一些功能。

通常使用时直接引入logback-classic的依赖,便可自动引入logback-core,当然为保险起见也可以显式的引入两者。


SpringBoot对logback的支持

上面已经提到SpringBoot默认集成了logback,因此无需专门引入便可进行直接使用。后面的示例我们也基于SpringBoot来进行演示和讲解,毕竟方便嘛。

在SpringBoot的web项目中logback的依赖关系如下:

logback日志框架基本知识_第4张图片
我们可以看到一旦引入spring-boot-starter-web依赖,对应的不仅引入了logback框架,还同时引入了slf4j相关框架。所以,项目中直接使用即可。


SpringBoot的集成

首先创建一个SpringBoot项目,核心依赖文件便是spring-boot-starter-web。

<dependency>
    <groupId>org.springframework.bootgroupId>
    <artifactId>spring-boot-starter-webartifactId>
dependency>

如此便集成完成,其实嘛,等于根本不用集成。我们在项目中创建一个Controller类,其中打印不同级别的日志信息。

package com.wideth.controller;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@Api(tags = "logback")
@RequestMapping("/api")
public class LogbackController {


    private static final Logger log = 
    LoggerFactory.getLogger(LogbackController.class);

    @ApiOperation(value = "logback")
    @GetMapping("/hello")
    public void hello() {

        log.debug("Hello world 测试debug日志");
        log.info("Hello world 测试info日志");
        log.warn("Hello world 测试warn日志");
        log.error("Hello world 测试error日志");
    }
}

上面代码中分别使用debug,info,warn,error方法输出日志。日志的所有配置,都是基于SpringBoot集成logback时的默认配置来的。

此时如果访问对应的url,便可打印出对应日志。

logback日志框架基本知识_第5张图片

你可能感兴趣的:(核心知识点,springboot,logback,log4j,java)