Logback学习

logback

1、logback介绍

Logback是由log4j创始人设计的另一个开源日志组件,性能比log4j要好。

lockback优点:

  • 内核重写、测试充分、初始化内存加载更小,这一切让logback性能和log4j相比有诸多倍的提升。
  • logback非常自然地直接实现了slf4j,这个严格来说算不上优点,只是这样,再理解slf4j的前提下会很容易理解logback,也同时很容易用其他日志框架替换logback。
  • logback有比较齐全的200多页的文档。
  • logback当配置文件修改了,支持自动重新加载配置文件,扫描过程快且安全,它并不需要另外创建一个扫描线程。
  • 支持自动去除旧的日志文件,可以控制已经产生日志文件的最大数量。

1.1 lockback模块

logback-core:其他两个模块的基础模块

logback-classic:它是log4j的改良版本,完整实现了SIf4j API

logback-access:访问模块与servlet容器继承提供通过Http来访问日志的功能

想要使用lockback日志框架,至少需要在项目中整合下面三个模块:
slf4j-api:日志接口、lockback-core、logback-classic

1.2 lockback组件

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

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

3) Layout:负责把事件转换成字符串,格式化的日志信息的输出。在logback中Layout对象被封装在encoder中。

1.3 lockback配置

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

1) logback.grovy

2) logback-test.xml

3) logback.xml

1.4 lockback.xml配置文件解析



<configuration>

    
    <property name="pattern" value="[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} %c %M %L [%thread] %m%n"/>

    

    

    
    
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        
        <target>System.errtarget>
        
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${pattern}pattern>
        encoder>
    appender>

    
    <appender name="file" class="ch.qos.logback.core.FileAppender">
        <file>path/to/log/file.logfile>

        
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            
            <fileNamePattern>path/to/log/file-%d{yyyy-MM-dd}.%i.log.gzfileNamePattern>
            <maxHistory>7maxHistory>
        rollingPolicy>

        
        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <maxFileSize>10MBmaxFileSize>
        triggeringPolicy>

        
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${pattern}pattern>
        encoder>
    appender>

    
    <root level="ALL">
	

        
        <appender-ref ref="console"/>
        <appender-ref ref="file"/>
    root>

configuration>

2、lockback快速入门

需求:使用Logback日志框架,纪录系统的运行信息。

实现步骤:

  1. 导入Logback框架到项目中去。
    slf4j-api:日志接口、lockback-core、logback-classic
  2. 将Logback框架的核心配置文件logback.xml直接拷贝到src目录下(必须是Src下)
  3. 创建Logback框架提供的Logger对象,然后用Logger对象调用其提供的方法就可以记录系统的日志信息。
public static final Logger LOGGER = LoggerFactory.getLogger("类名";

Logback学习_第1张图片
在这里插入图片描述

你可能感兴趣的:(tools,logback,学习)