perf4j使用

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/">
    <!-- Perf4J appenders -->
    <!--
       This AsyncCoalescingStatisticsAppender groups StopWatch log messages
       into GroupedTimingStatistics messages which it sends on the
       file appender defined below
    -->

    <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>

 

 

log4j

http://perf4j.codehaus.org/apidocs/org/perf4j/log4j/package-summary.html

 

参考:

http://stackoverflow.com/questions/2645670/perf4j-not-logging-correctly

 

UPDATE:

    log4j 使用其JDBCAppender时候,需要使用

 19       <layout class="org.apache.log4j.PatternLayout">
 20        <param name="ConversionPattern" value="INSERT INTO LOGS VALUES ('%x','%d{yyyy-MM-dd HH:mm:ss}','%C','%p','%m')"/>
 21        </layout>

对下链接的PatternLayout有待了解。

http://www.grepcode.com/file/repo1.maven.org/maven2/log4j/log4j/1.2.15/org/apache/log4j/PatternLayout.java#PatternLayout

另外对log4j怎么从log4j.xml  中读取配置表示一下好奇。

posted on 2015-05-05 19:03  majia1949  阅读(549)  评论(0编辑  收藏  举报

导航