博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
logback学习
阅读量:6324 次
发布时间:2019-06-22

本文共 2869 字,大约阅读时间需要 9 分钟。

logback的配置介绍

1、Logger、appender及layout

Logger作为日志的记录器,把它关联到应用的对应的context上后,主要用于存放日志对象,也可以定义日志类型、级别。
Appender主要用于指定日志输出的目的地,目的地可以是控制台、文件、远程套接字服务器、 MySQL、PostreSQL、 Oracle和其他数据库、 JMS和远程UNIX Syslog守护进程等。
Layout 负责把事件转换成字符串,格式化的日志信息的输出。
  2、logger context
各个logger 都被关联到一个 LoggerContext,LoggerContext负责制造logger,也负责以树结构排列各logger。其他所有logger也通过org.slf4j.LoggerFactory 类的静态方法getLogger取得。 getLogger方法以 logger名称为参数。用同一名字调用LoggerFactory.getLogger 方法所得到的永远都是同一个logger对象的引用。
  3、有效级别及级别的继承
Logger 可以被分配级别。级别包括:TRACE、DEBUG、INFO、WARN 和 ERROR,定义于ch.qos.logback.classic.Level类。如果 logger没有被分配级别,那么它将从有被分配级别的最近的祖先那里继承级别。root logger 默认级别是 DEBUG。
  4、打印方法与基本的选择规则
打印方法决定记录请求的级别。例如,如果 L 是一个 logger 实例,那么,语句 L.info(“..”)是一条级别为 INFO的记录语句。记录请求的级别在高于或等于其 logger 的有效级别时被称为被启用,否则,称为被禁用。记录请求级别为 p,其 logger的有效级别为 q,只有则当 p>=q时,该请求才会被执行。
该规则是 logback 的核心。级别排序为: TRACE < DEBUG < INFO < WARN < ERROR

logback的默认配置

如果配置文件 logback-test.xml 和 logback.xml 都不存在,那么 logback 默认地会调用BasicConfigurator ,创建一个最小化配置。最小化配置由一个关联到根 logger 的ConsoleAppender 组成。输出用模式为%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 的 PatternLayoutEncoder 进行格式化。root logger 默认级别是 DEBUG。

  1、Logback的配置文件
Logback 配置文件的语法非常灵活。正因为灵活,所以无法用 DTD 或 XML schema 进行定义。尽管如此,可以这样描述配置文件的基本结构:以开头,后面有零个或多个元素,有零个或多个元素,有最多一个元素。
  2、Logback默认配置的步骤
    (1). 尝试在 classpath下查找文件logback-test.xml;
    (2). 如果文件不存在,则查找文件logback.xml;
    (3). 如果两个文件都不存在,logback用BasicConfigurator自动对自己进行配置,这会导致记录输出到控制台。
    

logback.xml常用配置详解

clipboard.png

实例 logback.xml
UTF-8
[%d{HH:mm:ss.SSS}][%p][%c{40}][%t] %m%n
DEBUG
/Users/dsying/Develop/apache-tomcat-8.5.24/logs/mmall.log
/Users/dsying/Develop/apache-tomcat-8.5.24/logs/mmall.log.%d{yyyy-MM-dd}.gz
true
10
[%d{HH:mm:ss.SSS}][%p][%c{40}][%t] %m%n
/Users/dsying/Develop/apache-tomcat-8.5.24/logs/error.log
/Users/dsying/Develop/apache-tomcat-8.5.24/logs/error.log.%d{yyyy-MM-dd}.gz
true
10
[%d{HH:mm:ss.SSS}][%p][%c{40}][%t] %m%n
ERROR
ACCEPT
DENY

转载地址:http://gtmaa.baihongyu.com/

你可能感兴趣的文章
Hadoop MapReduce编程 API入门系列之分区和合并(十四)
查看>>
判断二叉树是否平衡、是否完全二叉树、是否二叉排序树
查看>>
并查集的应用之求解无向图中的连接分量个数
查看>>
7个神奇的jQuery 3D插件
查看>>
在线浏览PDF之PDF.JS (附demo)
查看>>
波形捕捉:(3)"捕捉设备"性能
查看>>
AliOS Things lorawanapp应用介绍
查看>>
美国人的网站推广方式千奇百怪
查看>>
几十条业务线日志系统如何收集处理?
查看>>
C#字串与Unicode互相转换方法
查看>>
linux内核数据结构之链表【转】
查看>>
使用GraphHttpClient调用Microsoft Graph接口 - GET
查看>>
Ubuntu12.04 安装Samba
查看>>
Linux signal 那些事儿(4)信号的deliver顺序【转】
查看>>
Linux堆内存管理深入分析 (上半部)【转】
查看>>
TypeScript:基本类型和接口
查看>>
HDOJ1234 ( 开门人和关门人 ) 【sort函数】
查看>>
使用 Python 开始你的机器学习之旅【转】
查看>>
WPF中控件ListView和DataGrid典型属性介绍
查看>>
网站健康检查
查看>>