Log4j 兼容性更新
PTC 已更新代码库,使其与 Log4j 2.0 兼容。在升级后的解决方案中,请注意以下 Log4j 更新:
不支持的 API
• DynamicMBeanRenderer API 不再受 Windchill 12.0.2.0 支持。根据 Log4j 2.0 的兼容性报告,呈现器不受支持。
• Log4j 2.0 版本不支持 setLayout API。 该 API 将从 AppenderMonitor Mbean API 列表中移除。
• Log4j 2.0 版本不支持 getIgnoresThrowable API。 该 API 将从 LayoutMonitor Mbean API 列表中移除。
• Windchill 不支持 PatternLayoutBeanInfo 和 LayoutBeanInfo API。
• Log4j 2.0 不支持 activateOptions API。
• 在 JConsole 上,com.ptc.logging 头下的 LoggerInfo 将显示 additivity 属性设置为 false 的记录器。
log4j.LogR 类的更新
• LogR.getLogger() API 已更新为返回 org.apache.logging.log4j.Logger 类型的对象。以前,返回类型为 org.apache.log4j.Logger。
• getLoggerRepository() 已被移除,因为在 Log4j 2.0 库中不受支持。
使用此 API 的任何自定义代码都需要进行更新。有关用法的详细信息,请参阅
附加器的自定义示例。
递归错误
如果在构造日志消息字符串时调用了记录器,则会发生 Log4j 2.0 错误:
Logger.error(“Message to be shown”,myException);
如果 myException 类在其 getMessage() 中使用记录器,则会发生如下错误:ERROR Recursive call to appender ReconnectPrincipalsUtilLogFile。此错误源于 AppenderControl.java。有关解决方案,请参阅 Log4j 文档。
有关
Windchill Log4j 2.0 自定义和用法的信息,请参阅
附加器的自定义示例。有关任何 Log4j 2.0 自定义的说明,请参阅 Log4j 2.0 文档。