Log4j - 根据项目模块记录到多个日志文件

Vee*_*era 5 java logging log4j

考虑这种情况:

我有一个项目有两个模块和一个通用模块如下(包结构):

com.mysite.moduleone
com.mysite.moduletwo
com.mysite.commonmodule
Run Code Online (Sandbox Code Playgroud)

在上面,commonmodule类可以由其他两个模块使用.

问题:

我需要配置Log4J这样一种方式,即日志消息来自moduleonemoduletwo转到不同的日志文件.我总是可以使用类别来做到这一点.

但真正的问题是当我想从commonmodule也记录消息时.所以,当commonmodule类是从所谓moduleonecommonmodule日志信息应到moduleone日志文件.如果commonmodule从accesse moduletwocommonmodule日志消息应该去moduletwo日志文件.

是否可以以这种方式配置Log4J?任何意见?

PS:我想我的问题很明确.如果有任何困惑,请发表评论,请尽量清除.:)

Ste*_*n C 1

是否可以以这种方式配置 Log4J?

简而言之,它不适用于 log4j,除非您编写自定义过滤器。该过滤器需要捕获并分析每个日志事件的调用堆栈,使其到达每个日志附加程序......这将是昂贵的。