OSGi - 外部jar文件的日志记录配置

时间:2011-12-16 03:15:24

标签: logging log4j osgi bundle quartz-scheduler

我已经构建了一个依赖于Quartz等外部库的OSGi应用程序。 我为所有这些库创建了单独的bundle,但问题是他们有自己的日志配置。

因此,当我将应用程序石英日志运行到控制台

[DefaultQuartzScheduler_QuartzSchedulerThread] DEBUG o.quartz.core.QuartzSchedulerThread - batch acquisition of 0 triggers

我在如何正确限制或重定向日志记录方面有点迷失。我在Quartz包中有一个log4j.xml文件,它试图将日志记录级别设置为错误,但它没有效果

<logger name="org.quartz">
     <level value="error" />
     <appender-ref ref="console" />
</logger>

我一直在寻找OSGi记录策略,但结果却更加困惑。

1 个答案:

答案 0 :(得分:0)

看看Pax-Logging - 它将处理大多数日志记录框架。只要确保你没有部署实际的log4j jar,Pax-Logging api和实现包就会为你处理一切。

您可以设置默认日志记录级别,但是对于更详细的配置,您还需要ConfigAdmin服务。见http://team.ops4j.org/wiki/display/paxlogging/Configuration