首页 > 其他分享 >logback

logback

时间:2022-11-26 00:00:41浏览次数:35  
标签:cn 一个 logger logback 日志 名为

 

logback介绍

Logback继承自log4j。Logback的架构非常的通用,适用于不同的使用场景。

logback和Log4j都是slf4j规范的具体实现,我们在程序中直接调用的API其实都是slf4j的api,底层则是真正的日志实现组件---logback或者log4j。

Logback 构建在三个主要的类上:Logger,Appender 和 Layout。这三个不同类型的组件一起作用能够让开发者根据消息的类型以及日志的级别来打印日志。

Logger作为日志的记录器,把它关联到应用的对应的context后,主要用于存放日志对象,也可以定义日志类型、级别。各个logger 都被关联到一个 LoggerContext,LoggerContext负责制造logger,也负责以树结构排列各 logger。

Appender主要用于指定日志输出的目的地,目的地可以是控制台、文件、 数据库等。

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

logback的maven坐标:

<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.2.3</version>
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-core</artifactId>
    <version>1.2.3</version>
</dependency>

logback层级

在 logback中每一个 logger 都依附在 LoggerContext 上,它负责产生 logger,并且通过一个树状的层级结构来进行管理。

一个 Logger 被当作为一个实体,它们的命名是大小写敏感的,并且遵循以下规则:

如果一个logger的名字加上一个.作为另一个logger名字的前缀,那么该logger就是另一个logger的祖先。如果一个logger与另一个logger之间没有其它的logger,则该logger就是另一个logger的父级。
​
举例:
名为cn.itcast的logger是名为cn.itcast.service的logger的父级
名为cn的logger是名为cn.itcast的logger的父级,是名为cn.itcast.service的logger的祖先

在logback中有一个root logger,它是logger层次结构的最高层,它是一个特殊的logger,因为它是每一个层次结构的一部分。

logback日志输出等级

logback的日志输出等级分为:TRACE, DEBUG, INFO, WARN, ERROR。

如果一个给定的logger没有指定一个日志输出等级,那么它就会继承离它最近的一个祖先的层级。

为了确保所有的logger都有一个日志输出等级,root logger会有一个默认输出等级 --- DEBUG。

logback初始化步骤

  1. logback会在类路径下寻找名为logback-text.xml文件

  2. 如果没有找到, logback会继续寻找名为logback.groovt的文件

  3. 如果没有找到,logback会继续寻找名为logback.xml的文件

  4. 如果没有找到, 将会在类路径下寻找文件META-INFO/service/ch.qos.logback.class.spi.Configurator, 该文件的内容为实现了Configurator接口的实现类的全限定类名

  5. 如果以上都没有成功, logback会通过BasicCOnfigurator为自己进行配置, 并且日志会全部在控制台打印出来

最后一步的目的是为了保证在所有的配置文件都没有被找到的情况下提供一个默认的类, 日志输出在控制台的

标签:cn,一个,logger,logback,日志,名为
From: https://www.cnblogs.com/phonk/p/16926725.html

相关文章

  • 【Logback+Spring-Aop】实现全面生态化的全链路日志追踪系统服务插件「SpringAOP 整合
    承接前文针对于上一篇【Logback+Spring-Aop】实现全面生态化的全链路日志追踪系统服务插件「Logback-MDC篇」的功能开发指南之后,相信你对于Sl4fj以及Log4j整个生态体系的功......
  • SpringBoot日志框架LogBack
    logback记录器的属性依赖SpringBoot天生集成了logback日志框架,因此想要输出日志,根本不用再引入多余的依赖日志文件说明appender-为日志输出目的地,log4提供的ap......
  • 【Logback+Spring-Aop】实现全面生态化的全链路日志追踪系统服务插件「Logback-MDC篇
    日志追踪日志追踪对于功能问题的排查和数据流转的路径分析时非常重要的,有了全链路日志追踪体系机制可以非常有效且快速的定位问题,但在多线程环境中,若没有相关成熟的框架的......
  • logback的配置和使用
    日志的级别:OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、ALLlogging:level:info#可以配置OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、ALL首先在applic......
  • 【Logback+Spring-Aop】实现全面生态化的全链路日志追踪系统服务插件「Logback-MDC篇
    日志追踪日志追踪对于功能问题的排查和数据流转的路径分析时非常重要的,有了全链路日志追踪体系机制可以非常有效且快速的定位问题,但在多线程环境中,若没有相关成熟的框架的支......
  • Logback的使用
    鉴于之前使用Log4j遇到了严重的漏洞问题:Apchelog4j远程代码执行漏洞,漏洞编码:RCE(CVE-2021-44228),所以更换为Logback简介Logback是一个Java开源日志框架,以继承改善log4......
  • logback-spring.xml日志配置
    遇到任何事情,可以放弃,但是永远要有面对的勇气引入对应pom依赖<dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spr......
  • slf4j,logback,log4j区别
    slf4j是提供日志输出api的,需要依赖logback或log4j才能输出日志。推荐使用slf4j+logback的组合,slf4j+log4j还需要适配器。slf4j+logback使用:1添加依赖<dependency><......
  • logback-spring.xml文件详解,日志优化
    依赖<dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>2.0.3</version></dependency><dependency><groupId......
  • logback.xml
    <?xmlversion="1.0"encoding="UTF-8"?><configurationscan="true"scanPeriod="60seconds"debug="false"><!--日志存放路径--><propertyname="log.pat......