Logback基本使用
创始人
2024-05-15 21:59:51

文章目录

  • Logback的使用
    • 1. logback入门
    • 2. logback 配置
    • 3. logback-access的使用

Logback的使用

  • Logback是由log4j创始人设计的另一个开源日志组件,性能比log4j要好
  • 官方网站:https://logback.qos.ch/index.html
  • Logback主要分为三个模块:
    logback-core:其它两个模块的基础模块
    logback-classic:它是log4j的一个改良版本,同时它完整实现了slf4j API
    logback-access:访问模块与Servlet容器集成提供通过Http来访问日志的功能
  • 后续的日志代码都是通过SLF4J日志门面搭建日志系统,所以在代码是没有区别,主要是通过修改配置文件和pom.xml依赖

1. logback入门

  1. 添加依赖
ch.qos.logbacklogback-classic1.2.3

在这里插入图片描述

  1. 代码实现
//定义日志对象
public final static Logger LOGGER = LoggerFactory.getLogger(LogBackTest.class);@Test
public void test1() {// 日志输出LOGGER.error("error");LOGGER.warn("warn");LOGGER.info("info");LOGGER.debug("debug"); // logback默认级别LOGGER.trace("trace");
}

在这里插入图片描述

2. logback 配置

logback会依次读取以下类型配置文件:

  • logback.groovy
  • logback-test.xml
  • logback.xml

如果均不存在会采用默认配置

  1. logback组件之间的关系
    1. Logger:日志的记录器,把它关联到应用的对应的context上后,主要用于存放日志对象,也
      可以定义日志类型、级别。
    2. Appender:用于指定日志输出的目的地,目的地可以是控制台、文件、数据库等等。
    3. Layout:负责把事件转换成字符串,格式化的日志信息的输出。在logback中Layout对象被封
      装在encoder中。
  2. 基本配置信息

System.err${pattern}${log_dir}/logback.log${pattern}${log_dir}/logback.html%-5level%d{yyyy-MM-dd HH:mm:ss.SSS}%c%M%L%thread%m
public class LogbackTest {public static final Logger LOGGER = LoggerFactory.getLogger(LogbackTest.class);@Testpublic void test1() {LOGGER.error("error");LOGGER.warn("warn");LOGGER.info("info");LOGGER.debug("debug"); // logback默认级别LOGGER.trace("trace");}}

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

  1. FileAppender配置
  2. RollingFileAppender配置

${log_dir}/roll_logback.log${pattern}${log_dir}/rolling.%d{yyyy-MM-dd}.log%i.gz1MB

在这里插入图片描述

  1. Filter和异步日志配置
  • 过滤 ERROR 级别的日志

${log_dir}/roll_logback.log${pattern}${log_dir}/rolling.%d{yyyy-MM-dd}.log%i.gz1MBERRORACCEPTDENY

在这里插入图片描述

  • 自定义 logger 对象,如下就会输出 info 级别以上的日志



  1. 官方提供的log4j.properties转换成logback.xml
    https://logback.qos.ch/translator/

3. logback-access的使用

  • logback-access模块与Servlet容器(如Tomcat和Jetty)集成,以提供HTTP访问日志功能,可以使用logback-access模块来替换tomcat的访问日志。
  1. 将logback-access.jar与logback-core.jar复制到$TOMCAT_HOME/lib/目录下

  1. 修改$TOMCAT_HOME/conf/server.xml中的Host元素中添加:


${LOG_DIR}/access.logaccess.%d{yyyy-MM-dd}.log.zipcombined

相关内容

热门资讯

李亚鹏曝光捐赠名单 近日,李亚鹏在视频中透露,张杰、谢娜夫妻于2011年为嫣然天使儿童医院捐赠过病房,引发关注。视频中还...
印尼万隆市山体滑坡已致11人死... 当地时间1月25日,据印尼警方消息,西爪哇省万隆市山体滑坡灾害已致11人遇难。相关搜救和善后工作仍在...
国际锐评|“对话中国”何以成为... 转自:国际锐评连日来,世界与中国的对话很频繁。十天前,加拿大总理卡尼对中国进行正式访问,签署多项合作...
全球瞭望丨肯尼亚媒体:中国出口... 新华社内罗毕1月24日电(记者由荟圆)肯尼亚主流媒体《星报》23日刊发评论员文章说,中国的贸易顺差是...
出席省十四届人大四次会议 承德... 转自:承德发布出席省十四届人大四次会议承德代表团举行全体会议推选柴宝良为团长 王亚军为副团长1月25...