将log4j配置为不使用.java文件类型的日志文件名

时间:2014-06-27 13:08:52

标签: xml layout configuration log4j

我想以下列方式记录类名(不包括包前缀)和方法:

<className>.<methodName>

目前我的xml布局是

<layout class="org.apache.log4j.PatternLayout">
  <param name="ConversionPattern" value="%d %5p [%t] (%F.%M) - %m%n" />
</layout>

返回包含.java文件类型的文件名。

有没有办法配置log4j,以便从文件名中删除.java?

1 个答案:

答案 0 :(得分:1)

如果你想要的是类名,那么你应该考虑%C转换字符,如Javadoc for PatternLayout中所述。

例如,要指定非限定类名:

<layout class="org.apache.log4j.PatternLayout">
  <param name="ConversionPattern" value="%d %5p [%t] (%C{1}.%M) - %m%n" />
</layout>

请注意{1}限定符的用法,该限定符指定完全限定类名的第一个最右边的组件。