作家
登录

Java在线问题排查利器之Btrace&Greys

作者: 来源: 2017-10-12 13:28:04 阅读 我要评论


public class UrsInterfaceCalls{

/**
* 备注2
* 本代码用于监控 CookieDecoder 中 requestDecode 办法的履行时光,如不雅履行时光大年夜于 500ms,则打印花费的时光和客栈
* @param duration
@OnMethod(
clazz="com.netease.urs.CookieDecoder",
method="requestDecode",
location=@Location(Kind.RETURN)) // 备注2
public static void requestDecode( @Duration long duration ) { // 备注3
//备注4
+---[5282,5280ms]com.netease.urs.http.CustomHttpComponent:execute(@60)
if(duration /1000000 > 500){
println("==CookieDecoder requestDecode spend: " + duration /1000000 + " ms");
jstack();
}

/**
* @param duration
*/
@OnMethod(
clazz="com.netease.urs.http.CustomHttpComponent",
一个是监听CookieDecoder.requestDecode()的履行时光,如不雅大年夜于 500ms,则打印日记,并打印相干客栈;
method="execute",

location=@Location(Kind.RETURN))
public static void execute( @Duration long duration ) {
if(duration /1000000 > 500){
println("==ursCookieHttp doExecute spend: " + duration /1000000 + " ms");
jstack();
}
}
6
30
}

扼要解释

本监控类,写了两个监控办法:
另一个监听CustomHttpComponent.execute()的履行时光。

备注1: 添加注释 @BTrace ,代表本脚本将应用btrace相干功能;

备注2: 拦截办法定义 ,@OnMethod 可以指定 clazz 、 method、location。由此构成了在什么机会(location 决定)监控某个类/某些类(clazz 决定)下的某个办法/某些办法(method 决定)。

@OnMethod(clazz="com.netease.urs.CookieDecoder",method="requestDecode",location=@Location(Kind.RETURN))	
				
			

  推荐阅读

  Kotlin将超越Java成为Android开发的第一语言?

Realm 公司供给了一款备受移动开辟者迎接的及时数据库,在查询拜访了大年夜约十万名活泼的开辟者后,Realm 发明在本年 5 月份谷歌 I/O 大年夜会之前用 Java 编写的 Android 应用中有 20% >>>详细阅读


本文标题:Java在线问题排查利器之Btrace&Greys

地址:http://www.17bianji.com/lsqh/37853.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)