Perf4J@Profiled的几种写法[通俗易懂]

Perf4J@Profiled的几种写法[通俗易懂]在项目中使用Perf4J的最简便的方法就是直接在任何一个需要监控的方法上加上@Profiled注释即可。 @Profiled支持一些定制,在此记录几种@Profiled写法: 1、最简写法@Profiled     由此产生的日志语句形如: 2009-09-0714:37:23,734[main]INFOorg.perf4j.T…

大家好,又见面了,我是你们的朋友全栈君。

在项目中使用Perf4J的最简便的方法就是直接在任何一个需要监控的方法上加上@Profiled 注释即可。

 

@Profiled 支持一些定制,在此记录几种@Profiled 写法:

 

1、最简写法

@Profiled 

 

 

   由此产生的日志语句形如: 

2009-09-07 14:37:23,734 [main] INFO org.perf4j.TimingLogger - start[开始时间] time[执行耗时] tag[方法名] 

 

2、带logger标识

@Profiled(logger = "test.PriceService")

    由此产生的日志语句形如:

2009-09-07 14:37:23,734 [main] INFO test.PriceService - start[开始时间] time[执行耗时] tag[方法名] 

    简要说明:

   不加该标识,则所有的日志类名均为 org.perf4j.TimingLogger ,当2个类中的方法重名时,无法区分是哪个方法。

 

3、带tag标识

 

@Profiled(tag = "search({$0},{$1},{$2})")

    由此产生的日志语句形如: 

2009-09-07 14:37:23,734 [main] INFO org.perf4j.TimingLogger - start[开始时间] time[执行耗时] tag[search(a,b,c)] 

    简要说明:

    当方法有参数时,可以通过{$x}输出参数值,当参数为一个对象时,可以通过{$x.属性}的方式法输出对象的属性值;

  tag标识支持JEXL表达式。

 

4、带message标识 

 

@Profiled(massage= "测试")

    由此产生的日志语句形如: 

2009-09-07 14:37:23,734 [main] INFO org.perf4j.TimingLogger - start[开始时间] time[执行耗时] tag[方法名] message[测试] 

   简要说明:

   message的作用即可以在输出的内容后加上任何自定义的内容。

 

 5、带logFailuresSeparately标识 

@Profiled(logFailuresSeparately= true)

    由此产生的日志语句形如:

2009-09-07 14:37:23,734 [main] INFO org.perf4j.TimingLogger - start[开始时间] time[执行耗时] tag[方法名.failure]

   简要说明:

  加上此标识,会输出方法执行结果,成功时为方法名.success ,当方法执行中出现异常时为方法名.failure

 

 

附:官网对此项的说明地址:http://perf4j.codehaus.org/devguide.html#Using_Spring_AOP_to_Integrate_Timing_Aspects

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131362.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • python 内建模块_simulink常用模块

    python 内建模块_simulink常用模块Python常用内建模块datetime处理日期和时间的标准库。注意到datetime是模块,datetime模块还包含一个datetime类,通过fromdatetimeimportdatetime导入的才是datetime这个类。如果仅导入importdatetime,则必须引用全名datetime.datetime。datetime.now()返回当前日期和时间,其类型是…

    2022年10月28日
  • summary8:GetSystemMetrics()、SetWindowPos()、 ModifyStyleEx()

    summary8:GetSystemMetrics()、SetWindowPos()、 ModifyStyleEx()1.intiWidth=GetSystemMetrics(SM_CXSCREEN);//thewidthofscreenintiHeight=GetSystemMetrics(SM_CYSCREEN);//thehightofscreen::SetWindowPos(this->GetSafeHwnd(),HWND_TOPMOST,iWidth/2-…

  • oSIP协议栈浅析

    oSIP协议栈浅析1.oSIP介绍2.oSIP结构分析2.1oSIP结构2.2状态机(FiniteStateMachines)模块2.2.1 概述2.2.2ICT状态机2.2.3NICT状态机2.2.4IST状态机2.2.5NIST状态机2.3解析器(Parsers)模块2.3.

  • dede 提交表单 发送邮件

    dede 提交表单 发送邮件

  • 离线数仓和实时数仓架构与设计

    离线数仓和实时数仓架构与设计前言:离线数仓和实时数仓架构与设计讲解离线数仓和实时数仓架构与设计一、数仓架构演变(场景驱动)二、离线大数据架构三、离线数仓分层四、离线大数据架构典型案例1、Lambda架构1.Lambda架构2.Lambda架构进一步了解3.Lambda架构典型案例4.Lambda架构典型案例(有赞广告团,基于Druid)5.Lambda架构存在的问题2、Kappa架构1.Kappa架构典型案例2.Kappa架构典型案例(一Kylin为例)3.Kappa架构的重新处理过程3、Lambda架构vsKappa架构的对比

  • ImageView(仿QQ图片查看器)

    ImageView(仿QQ图片查看器)程序运行截图:使用方法:1、直接把图像文件拖到图标上显示2、通过命令行方式,示例:ImageView.exe”带全路径的图像文件名称”3、打开ImageView.exe,将图像文件拖到窗口上显示未实现功能:1、右下角比例窗口2、最大化后的窗口底部图片选取条3、打开/关闭窗口动画效果4、优化GDI+支持的图像格式判断逻辑5、不使用图片

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号