Logback - 每个方法使用appender,而不是class

时间:2011-07-05 23:25:30

标签: java logging logback

我有一个有几种方法的课。我希望每个方法输出到不同的日志文件。使用这样的logback.xml文件,它会记录该类的所有日志记录调用。

<logger name="com.mincom.ellipse.conversion.BatchConverter" level="INFO">
   <appender-ref ref="FILE" />
</logger>

如何获取每个方法记录调用。我确信这很简单,但我似乎无法在doco中看到答案。

1 个答案:

答案 0 :(得分:4)

没有使用过logback,但是在log4j和其他人中你可以设置任何你喜欢的名字的记录器。使用类包和名称只是一种约定。所以我在你的班级设置了多个记录器,如下所示:

Logger logA = LogFactory.getLogger("LogA");
Logger logB = LogFactory.getLogger("LogB");

public void methodA() {
    logA.debug(...);
}
public void methodB() {
    logB.debug(...);
}

然后在你的logback设置中......

<logger name="LogA" level="INFO">
   <appender-ref ref="FILE-A" />
</logger>

<logger name="LogB" level="INFO">
   <appender-ref ref="FILE-B" />
</logger>

应该有效。可能需要一些调整: - )