我已经构建了一个依赖于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记录策略,但结果却更加困惑。
答案 0 :(得分:0)
看看Pax-Logging - 它将处理大多数日志记录框架。只要确保你没有部署实际的log4j jar,Pax-Logging api和实现包就会为你处理一切。
您可以设置默认日志记录级别,但是对于更详细的配置,您还需要ConfigAdmin服务。见http://team.ops4j.org/wiki/display/paxlogging/Configuration