传统 Logback 配置与规范 Logback 配置

问题描述 投票:0回答:1

在浏览Logback手册第3章时,我注意到配置示例分为三种:LegacyCanonical(1.3)Tyler

手册对这些选项几乎保持沉默。所以我现在想知道这些是什么,以及它们的目的和用例。

我在实践中只见过Legacy选项,这是我使用的选项,因为它是最简洁的。 Canonical 选项添加了一些样板文件(

<import>
ing Java 类)和奇怪的
<!DOCTYPE>
声明。 (请注意稍后的注释,配置语法是如此灵活,以至于不可能为其定义 DTD 模式。那为什么
<!DOCTYPE>
呢?)

java xml logback doctype
1个回答
0
投票

我尝试收集一些信息:

我猜测了一下。 所有这些来源都得出这个结论:

Logback 最初引入了 Joran,一个可以读取 XML 文件(legacy 格式)的配置引擎。

在 Logback 1.3 版本中,Joran 发生了重大变化。请参阅2021-07-28 版本1.3.0-alpha6发布

Logback 的配置系统 Joran 已被重写,以使用可以单独处理的内部表示模型。副作用是,logback 配置脚本现在基本上是无序的。

这可能会导致 XML 配置发生变化,并且根据您在 logback 配置中使用的功能,在使用 1.3.x 或 1.4.x 的 Logback(您使用的两个版本中)时,您可能必须转换为 Canonical 配置。如果您想使用 Java EE,则需要版本 1.3.x;如果您想使用 Jakarta EE,则需要版本 1.4.x,否则它们应该是相等的)。

然后Logback 1.5来了,支持代码配置。为了将现有的 XML 文件转换为代码,发布了Tyler。请参阅 2024-02-28 logback-tyler 版本 0.1 发布

Logback-tyler 将 logback-classic XML 配置文件 (logback.xml) 翻译为 Java。


免责声明:我认为遗憾的是没有地方以全面的方式记录这些差异,我只是尝试在这里这样做,尽管我对 Logback 的了解不是很深入,甚至没有经常使用它

© www.soinside.com 2019 - 2024. All rights reserved.