问题描述
在内部,log4j使用LogEvent将所有数据段(日志消息,线程名称,时间戳,标记,记录器名称等)携带到可能出现在输出中的附加程序。
Log4j日志事件仅供内部使用,不能设计为由应用程序扩展。例如,异步记录器使用LogEvent接口的特殊实现来满足基础LMAX Disruptor库的要求。扩展它并不容易。
您的用例对我来说并不明确,但是例如,如果您要开发一个自定义附加程序,而该附加程序需要LogEvent接口中不存在的自定义数据,则可以考虑使用ThreadContext映射将数据从您的应用传递到自定义附加程序而不是尝试使用自定义日志事件。
解决方法
我想从Log4j
1.x迁移到Log4j2.x。所以我正在尝试使用这里log4j-1.2-api.jar
提到的。我的应用程序具有的实现
,但是我找不到使用log4j 2.x api桥使用LoggingEvent的方法。无论如何,我可以在Log4j
2.2中使用LoggingEvent吗?org.apache.log4j.spi.LoggingEvent
谢谢。