我尝试搜索Spring文档+互联网上的文章+ Stackoverflow的问题,但没有找到任何有关它的信息。 对我来说,Log4J2的配置(尤其是模式)更简单,更个人化。
此外,根据这些文章,我发现Log4J2比Logback具有更好的性能:
https://stackify.com/compare-java-logging-frameworks
https://blog.overops.com/the-logging-olympics-a-race-between-todays-top-5-logging-frameworks
What is the difference between log4j, slf4j and logback?
https://www.sitepoint.com/which-java-logging-framework-has-the-best-performance/
如果我们考虑使用异步记录器,那么根据Apache的说法,使用Log4J2的性能要好得多-https://logging.apache.org/log4j/2.x/performance.html,是的,我知道使他们的框架看起来更好是他们的工作,但是我相信他们可靠。
我的假设是Pivotal选择Logback作为默认选项,因为Log4J2是在他们发布Spring-Boot 1.0版本之后的某个时候发布的。
有人能对此有所启发吗? 我的假设正确吗?
答案 0 :(得分:1)
这是原因:
菲尔·韦伯:我真的不认为提出的论据证明引入重大变革是合理的。 [...]如果我们是 从今天开始Spring Boot,我们很可能已经选择了Log4J2 Logback,但我认为到目前为止,还没有令人信服的理由 导致我们的用户升级痛苦。 [...]我认为这不太可能 我们将考虑切换默认的日志记录系统,直到下一个 Spring Boot的主要版本。
Ralph Goers :计划添加对从Spring Cloud Config配置Log4j 2的支持。
答案 1 :(得分:0)
Log4j 2.12.0添加了对使用Spring Cloud Config进行动态重新配置来承载Log4j配置的支持,并增加了对Docker的支持。随着Log4j 2.13.0的发布,Log4j将通过提供Spring Lookup与Spring进一步集成,以便Log4j配置可以访问spring属性。另外,还可以从Spring的bootstrap.yml或application.yml文件中读取某些Log4j系统属性。 2.13.0还将提供Kubernetes查找,以允许在Log4j配置中将Kubernetes属性指定为要包括在日志事件中的属性。