不同框架slf4j与log4j的互操作性
Interoperability of slf4j with log4j with different frameworks
我想知道log4j与其他框架的互操作性。比如我以后想从log4j转到其他日志框架,会有什么限制。
此外,如果我在 slf4j 上使用 log4j,它是否会为我提供更改底层日志记录框架的灵活性?
最终,我的问题是我应该使用 log4j 而不是 slf4j 还是单独使用 log4j 进行日志记录,以便将来灵活地更改它?
您需要了解 SLF4J 的用途。 SLF4J 实际上使用其他框架,如 log4j、java logging 或 logback。 SLF4J 通过绑定将日志记录调用实际委托给幕后的其他库。
你可以看看这个
Why not use java.util.logging?
更好地理解这些库。 log4j和SLF4j的作者都在回答这个问题
您可以从他的回答中找到更多见解,也可以在他的个人资料下找到。
最终,我们无法为您解答。您需要根据正在构建的应用程序的短期和长期需求做出自己的决定。例如,
如果是简单的系统,寿命短,那可能就无所谓了。
如果它是一个可能需要随时间演进的长期系统,那么使用像 slf4j 这样的外观具有明显的长期优势。
如果是一个设计为可广泛复用的库,那么你需要考虑目标"eco-system"。但是 slf4j 是非常可取的。
但在您做出决定之前,您需要了解不同技术的用途;特别是 slf4j 的 真实 目的。
我想知道log4j与其他框架的互操作性。比如我以后想从log4j转到其他日志框架,会有什么限制。
此外,如果我在 slf4j 上使用 log4j,它是否会为我提供更改底层日志记录框架的灵活性?
最终,我的问题是我应该使用 log4j 而不是 slf4j 还是单独使用 log4j 进行日志记录,以便将来灵活地更改它?
您需要了解 SLF4J 的用途。 SLF4J 实际上使用其他框架,如 log4j、java logging 或 logback。 SLF4J 通过绑定将日志记录调用实际委托给幕后的其他库。
你可以看看这个
Why not use java.util.logging?
更好地理解这些库。 log4j和SLF4j的作者都在回答这个问题
您可以从他的回答中找到更多见解,也可以在他的个人资料下找到。
最终,我们无法为您解答。您需要根据正在构建的应用程序的短期和长期需求做出自己的决定。例如,
如果是简单的系统,寿命短,那可能就无所谓了。
如果它是一个可能需要随时间演进的长期系统,那么使用像 slf4j 这样的外观具有明显的长期优势。
如果是一个设计为可广泛复用的库,那么你需要考虑目标"eco-system"。但是 slf4j 是非常可取的。
但在您做出决定之前,您需要了解不同技术的用途;特别是 slf4j 的 真实 目的。