0
有一个maven OSGI组件,其中我调用了一个关于OSGI框架的EclipseStarter.stop()
语句。这行后面有几个日志语句。我使用了log4j2作为日志后端和前端JCL的pax-logging。在同一个文件中使用多种记录器类型的Java跳过日志语句
由于OSGI框架关闭,日志消息不会通过pax-logging-log4j2进行打印。因此,我正尝试使用java util logging来打印这些消息。 java文件中的记录器初始化操作如下。
private static final Log log = LogFactory.getLog(MyClass.class);
private static final Logger logger = Logger.getLogger(MyClass.class.getName());
log.info("Before shutdown");
EclipseStarter.stop();
logger.log(Level.INFO, "After shutdown JUL");
log.info("After shutdown JCL");
当我调试时,util日志语句似乎跳过。
您确认是否有处理程序连接到'MyClass'记录器,MyClass'记录器或根记录器的父项? – jmehrens
看起来不像。方法日志(记录)中的handlers.publish(记录)被跳过。 –
附上一个处理程序。在停止调用之前添加JUL日志语句以帮助调试。 – jmehrens