Log4j迁移指南
https://logging.apache.org/log4j/2.x/manual/migration.html
指出
对org.apache.log4j.Logger.getLogger的调用如果接受LoggerFactory,则必须删除org.apache.log4j.spi.LoggerFactory并使用Log4j 2的其他扩展机制之一。
log4j2中可用的扩展机制是什么?如何最好地在log4j2中迁移如下方法?
private static TraceLoggerFactory stTraceFactory = new TraceLoggerFactory();
public static Logger getTraceLogger(final String name) {
return getLogger(name, stTraceFactory);
}
class TraceLoggerFactory implements LoggerFactory {
@Override
public Logger makeNewLoggerInstance(final String name) {
return new TraceLogger(name);
}
}
1条答案
按热度按时间2q5ifsrm1#
不完全相关的问题,但下面是我的学习log4j2迁移.希望它能帮助某人。
自2021年底发现log4j漏洞以来,许多组织已经升级到log4j2来克服它。许多开发人员需要了解log4j到底是什么以及漏洞是什么。我建议你阅读有关这方面的内容,因为这是软件行业的一个主要漏洞。我还将2个应用程序迁移到log4j2,在迁移过程中遇到了许多问题。所以在这里写了这个。我会写一篇详细的文章,但就目前而言,如果其他人正在从log4j迁移到log4j2,我更喜欢阅读我下面的学习。
1.这是应用程序中的一个重大更改,因此在执行时要小心。它涉及几乎所有存在的文件的改变。
1.如果您要对遗留应用程序进行更改,则可能需要更改许多其他受支持的jar,因此要了解这需要时间。
1.如果有一个log4j.properties文件,将其转换为log4j.xml,可能会觉得很难转换,但相信我,你不会找到很多关于属性文件的文档。
1.一个替换所有的方法并不总是工作,仔细检查你的工作。
1.会有可传递的依赖关系,试着理解这一点,并在pom中排除它们。
1.如果您正在更改Spring或任何其他框架的版本,请了解新版本中有许多更改,请参阅文档。
从Log4j迁移到Log4j2的文档:https://logging.apache.org/log4j/2.x/manual/migration.html#Log4j2ConfigurationFormat
一些帮助我的网站:https://stackify.com/log4j2-java/https://www.digitalocean.com/community/tutorials/log4j2-example-tutorial-configuration-levels-appendershttps://howtodoinjava.com/log4j2/log4j2-consoleappender-example/https://access.redhat.com/solutions/4347841