http://www.blogjava.net/yangpingyu/archive/2012/04/16/374725.html
摘录如下
perf4j最重要的appender就是AsyncCoalescingStatisticsAppender,它会把一段时间内StopWatch的信息汇总到一个独立的GroupedTimingStatistics日志信息,然后把这个独立的信息传给下游的appenders,比如fileappenders,这样就可以写到文件中去了。也可以传给per4j的其他自定义appenders。
<log4j:configuration debug="false" xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="xoa.framework.coalescingStatistics" class="org.perf4j.log4j.AsyncCoalescingStatisticsAppender"> <param name="TimeSlice" value="60000"/> <appender-ref ref="xoa.framework.perfStatsAppender"/> </appender> <!-- 该 appender 用于输出性能统计的汇总结果 --> <appender name="xoa.framework.perfStatsAppender" class="org.apache.log4j.FileAppender"> <param name="File" value="../logs/perfStats.log"/> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%m%n"/> </layout> </appender> <!-- 该 appender 用于输出性能统计的细节 --> <appender name="xoa.framework.perfDetailAppender" class="org.apache.log4j.RollingFileAppender"> <param name="file" value="../logs/perfDetail.log"/> <param name="MaxFileSize" value="200MB"/> <param name="MaxBackupIndex" value="10"/> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%m%n"/> </layout> </appender> <logger name="org.perf4j.TimingLogger" additivity="false"> <level value="INFO"/> <appender-ref ref="xoa.framework.coalescingStatistics"/> <appender-ref ref="xoa.framework.perfDetailAppender"/> </logger>
参考:
http://stackoverflow.com/questions/2645670/perf4j-not-logging-correctly
时间: 2024-10-11 16:52:02