我正在使用log4j对我的某个应用程序进行一些日志记录。我的配置中的记录器看起来像这样。
<Root level="info">
<AppenderRef ref="Console"/>
</Root>
<Logger name="org.eclipse.jetty.server.Server" level="warn" additivity="false">
<AppenderRef ref="Console"></AppenderRef>
</Logger>
<Logger name="org.eclipse.jetty.util.log" level="warn" additivity="false">
<AppenderRef ref="Console"></AppenderRef>
</Logger>
<Logger name="org.eclipse.jetty.server.ServerConnector" level="warn" additivity="false">
<AppenderRef ref="Console"></AppenderRef>
</Logger>
基本上,我想要&#34;信息&#34;来自我编写的代码的级别消息,但是我希望外部lib只记录某些事情是警告还是更可怕。
这正如我所料,但是&#34; org.eclipse.jetty&#34;
下有很多课程。是否可以做这样的事情?
<Logger name="org.eclipse.jetty.*" level="warn">
<AppenderRef ref="Console" level="warn"></AppenderRef>
</Logger>
也就是说,我希望整个包中的所有内容都只是警告/错误/致命。
我尝试了上述内容并没有效果。是否有#34;通配符&#34;或者我可以用来为包中的所有东西设置记录器?
答案 0 :(得分:7)
对于基于属性的配置,您只需获取包名称而不使用任何通配符。也应该使用XML:)