log4j / slf4j基于包的日志记录,如何处理框架,例如弹簧?

时间:2015-06-15 08:31:14

标签: java spring logging log4j slf4j

假设我的应用程序由几个单独记录的组件组成:

myapp.log
myapp-foo.log
myapp-bar.log

我的类都定义了一个“标准”java记录器:

private static final Logger logger = LogManager.getLogger(ThisClass.class);

记录组件“foo”和“bar”是通过基于包的配置设置的(每个组件都记录到它自己的日志文件中):

<Logger name="com.mycompany.myapp.foo" level="info">
    <AppenderRef ref="foo"/>
</Logger>

<Logger name="com.mycompany.myapp.bar" level="info">
    <AppenderRef ref="bar"/>
</Logger>

这很好,直到我们想要查看来自我们使用的框架的日志消息,例如spring,因为spring日志语句最终在myapp.log - 而不是myapp-foo.log或{{ 1}}。

有一个myapp-bar.loglog4j.xml文件很方便,但是我们可以用这种方式使用基于包的日志配置 - 并且仍然将spring日志语句记录到“正确”的日志中log4j2.xml 的文件,myapp-foo.log

或者有不同的解决方案吗?

编辑:我们使用的是spring 4.0.3.RELEASE和log4j2

0 个答案:

没有答案
相关问题