是否可以在log4j 1.x中指定不基于包的通配符,但基于记录器名称的通配符?
我想要这样的事情:
<logger name="*Reporter" >
<level value="INFO"/>
<appender-ref ref="ReportFileAppender"/>
</logger>
答案 0 :(得分:1)
No(请参阅“记录器层次结构”一节)。您要做的是定义一组记录器,这是不可能的,因为每个记录器都有自己的名称。
以下内容应模仿您要实现的目标:
<logger name="Reporter" >
<level value="INFO"/>
<appender-ref ref="ReportFileAppender"/>
</logger>
在每个* Reporter课程中:
public class MyReporter {
private static final Logger logger = LogManager.getLogger("Reporter");
public MyReporter() {
logger.debug("foo");
}
}
我的直觉是你确实应该使用套餐。