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

perf4j使用的相关文章

Java监控工具介绍,VisualVm ,JProfiler,Perfino,Yourkit,Perf4J,JProbe,Java微基准测试

本文是本人前一段时间做一个简单Java监控工具调研总结,主要包括VisualVm ,JProfiler,Perfino,Yourkit,Perf4J,JProbe,以及对Java微基准测试的简单介绍,总结下来比较推荐,Visualvm,Perfino,yourkit和Jprofiler(推荐值按顺序依次递减),其它工具不太推荐使用.下面是文章目录结构:  一.VisualVm  1.简介 2 2.安装插件并启动VisualVM 2 3.内存分析 3 4.CPU分析 5 5.线程分析 6 6.连接

利用 perf4j 做服务监控

perf4j 是什么 -------------------- perf4j 是一套简单的服务监控框架,可以用来做一些系统常需要的监控,比如实时系统吞吐量,系统响应时间 perf4j生成监控图表 ---------------------------- pef4j可以生成的图表支持 Mean, Min, Max, StdDev, Count and TPS Mean 平均响应时间 Min 最小响应时间 Max 最大响应时间 Count 总数统计 TPS  吞吐量 监控图表样式如下 perf4j

perf4j+logback配置 可使用注解

最近项目打算使用perf4j进行性能监控,由于项目没有使用spring,而又不想对代码入侵过高,打算使用注解的方式进行接入.perf4j采用AspectJ库实现AOP. 具体接入方法如下: logback.xml <!--perf4j配置--> <appender name="statistics" class="ch.qos.logback.core.rolling.RollingFileAppender"> <Encoding>

Redis各种数据结构性能数据对比和性能优化实践

很对不起大家,又是一篇乱序的文章,但是满满的干货,来源于实践,相信大家会有所收获.里面穿插一些感悟和生活故事,可以忽略不看.不过听大家普遍的反馈说这是其中最喜欢看的部分,好吧,就当学习之后轻松一下. Redis各种数据结构性能数据对比 测试工具:perf4j 性能指标:平均值,最小值,最大值,方差 对比将814条数据按单条插入到哈希MAP和哈希SET: 对比从814条数据的哈希MAP和哈希SET中判断一个元素是否存在(map的hasKey和set的isMember): 大量数据插入哈希MAP,运

用JAVA日志来写诗

工欲善其事,必先利其器 很多程序员可能都忘了记录应用程序的行为是一件多么重要的事,当遇到多线程环境下高压力导致的并发bug时,你就能体会到记录log的重要性. 有的人很高兴的就在代码里加上了这么句: log.info("Happy and carefree logging"); 他可能都没有意识到应用程序的日志在维护,调优和故障识别中的重要性.我认为slf4j是最好的日志API,最主要是因为它支持一个很棒的模式注入的方式: log.debug("Found {} record

GitHub上那些值得一试的JAVA开源库

作为一名程序员,你几乎每天都会使用到GitHub上的那些著名Java第三方库,比如Apache Commons,Spring,Hibernate等等.除了这些,你可能还会fork或Star一些其他的开源库,但GitHub上的库实在太多了,以至于对于个人来说,你很难有时间去发现并了解那些不断加入的新库,而它们却往往能在一些新兴领域中给你提供帮助. 我一直使用JAVA来写后端应用,平时也会关注一些国外技术大牛的博客(来自Tapki.DZone.Google Developer等技术博客),从而注意到

立足GitHub学编程:13个不容错过的Java项目

立足GitHub学编程:13个不容错过的Java项目 今天我们将整理一大波干货满满的Java示例代码与能力展示素材. GitHub可谓一座程序开发的大宝库,有些素材值得fork,有些则能帮助我们改进自有代码或者学习编程技能.无论如何,开发工作当中我们几乎不可能绕得开GitHub. 下面,我们将一同分享各有趣且颇为实用的Java库,大家请任取所需.不用客气~ 1.极致精简的Java Bootique是一项用于构建无容器可运行Java应用的极简技术.该项目允许大家创建REST服务.Web应用.任务.

Java框架介绍-13个不容错过的框架项目

本文转自互联网,个人收藏所用. 下面,我们将一同分享各有趣且颇为实用的Java库,大家请任取所需.不用客气~ 1.极致精简的Java Bootique是一项用于构建无容器可运行Java应用的极简技术.该项目允许大家创建REST服务.Web应用.任务.数据库迁移等等,且一切都立足于模块实现.另外,大家也可以将其作为简单的命令进行使用. 该项目的目标在于将应用从Java容器中解放出来,允许开发者重新回归main()方法.另外其中还包含部分内置命令,因此就算各位需要处理的代码量不多或者并未向应用中导入

性能测试分析软件汇总–开源、商业全部收集

本文共包含:商业性能测试.监控.分析工具和免费.开源性能测试监控分析工具:共涉及java.php.net等各种开发语言平台,有系统性能分析.文件系统分析.微博.系统分析.数据性能分析等各种工具,可以说本文包含了现有的所有的性能测试监控分析工具工具133种. Java程序性能分析工具 VisualVM VisualVM是一个集成多个JDK命令行工具的可视化工具.可以作为Java应用程序性能分析和运行监控的工具.开发人员可以利用它来监控.分析线程信息,浏览内存堆数据.系统管理员可以利用它来监测.控制