Logback 教程

Logback 笔记

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/logback-intro.html

Logback 简介


Logback 是由 log4j 创始人 Ceki Gülcü 设计的又一个开源日志组件。Logback 分成三个模块,logback-core,logback-classic 和 logback-access。

  1. logback-core 是其它两个模块的基础模块。
  2. logback-classic 是 log4j 的一个改良版本,实现了 slf4j api,所以你可以在 logback 和 slf4j 其他的实现之间切换。
  3. logback-access 访问模块与 Servlet 容器集成提供通过 Http 来访问日志的功能。

Logback 三大重要概念

在 Logback 里,最重要的三个类分别是 Logger,Appender,Layout。

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

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

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

Logger 类是 logback-classic 模块的一部分,而 Appender 和 Layout 接口来自 logback-core。

Logback 与 Log4J

实际上,这两个日志框架都出自同一个开发者之手,Logback 相对于 Log4J 有更多的优点。

  • 同样的代码路径,Logback 执行更快;
  • 更充分的测试;
  • 原生实现了 SLF4J API(Log4J 还需要有一个中间转换层);
  • 内容更丰富的文档;
  • 支持 XML 或者 Groovy 方式配置;
  • 配置文件自动热加载;
  • 从 IO 错误中优雅恢复;
  • 自动删除日志归档;
  • 自动压缩日志成为归档文件;
  • 支持 Prudent 模式,使多个 JVM 进程能记录同一个日志文件;
  • 支持配置文件中加入条件判断来适应不同的环境;
  • 更强大的过滤器;
  • 支持 SiftingAppender(可筛选 Appender);
  • 异常栈信息带有包信息;
Logback 在实际生产环境中,一般推荐使用 slf4j+logback。slf4j 定义日志接口及基本实现,而具体的实现由其他日志组件提 ...
Logback 在引入相关的 jar 包后,配置相应的 logback 配置文件即可。 ...
Java 是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级 Web 应用开发和移动应用开发。 ...
采用了MVT的软件设计模式,即模型(Model),视图(View)和模板(Template)。这套框架是以比利时的吉普赛爵士吉他手Djang ...
Redis 是业界主流的高性能的 key-value NoSQL 数据库,是一个使用 ANSI C 编写的开源、支持网络、基于内存、可选持久 ...