SpringBoot应用自定义logback日志

概述

默认情况下,SpringBoot内部使用logback作为系统日志实现的框架,将日志输出到控制台,不会写到日志文件。如果在application.properties或application.yml配置,这样只能配置简单的场景,保存路径、日志格式等。复杂的场景(区分 info 和 error 的日志、每天产生一个日志文件等)满足不了,只能自定义配置文件logback-spring.xml或者logback.xml。本篇文章主要讲解下如何自定义logabck.xml以及对logback文件中配置做一个详解。

logback配置详解

首先我们先了解下logback。

logback 主要分为三个模块:

  • logback-core:是其他两个模块的基础模块
  • logback-classic:是对 core 模块的扩展,相当于 log4j 的改良版。classic 模块实现了 Slf4j 的 API 因此可以便于和其他日志框架直接切换
  • logback-access:与Servlet容器集成,以提供http访问日志功能。

官网配置文档地址:logback.qos.ch/manual/conf…

配置内容概念介绍

Logger Context

LoggerContext负责制造logger,也负责以树结构排列各logger。其他所有logger也通过org.slf4j.LoggerFactory 类的静态方法getLogger取得。 getLogger方法以 logger名称为参数。

Logger

Logger作为日志的记录器,把它关联到应用的对应的context上后,主要用于存放日志对象,也可以定义日志类型、级别。

Appender

Appender主要用于指定日志输出的目的地,目的地可以是控制台、文件、远程套接字服务器、 MySQL、PostreSQL、 Oracle和其他数据库、 JMS和远程UNIX Syslog守护进程等。

Layout

负责把事件转换成字符串,格式化的日志信息的输出。

配置介绍

配置文件的基本结构:以开头,后面有零个或多个元素,有零个或多个元素,有最多一个元素。

默认配置的步骤

  1. 尝试在 classpath下查找文件logback-test.xml;
  2. 如果文件不存在,则查找文件logback.xml;
  3. 如果两个文件都不存在,logback用BasicConfigurator自动对自己进行配置,这会导致记录输出到控制台。



    
    
    
    
    
    
    
    
    
      
    
    
    
                    

你可能感兴趣的:(spring,boot,logback,java,数据库,数据结构)