VisualVM下载地址:http://visualvm.github.io/download.html

解压后打开bin目录下的visualvm.exe

选择Tool-->Plugins,选择插件安装

测试代码

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader; public class BTraceTest {
public int add(int a,int b){
return a+b;
}
public static void main(String[] args) throws IOException {
BTraceTest test=new BTraceTest();
BufferedReader reader=new BufferedReader(new InputStreamReader(System.in));
for(int i=;i<;i++){
reader.readLine();
int a=(int) Math.round(Math.random()*);
int b=(int)Math.round(Math.random()*);
System.out.println(test.add(a,b));
}
}
}

运行测试代码,在visualVM中右键选择应用-->Trace Application

即可出现Btrace窗口

在这里可以编辑代码

public class TracingScript {
/* put your code here */
@OnMethod(
clazz="BTraceTest",
method="add",
location=@Location(Kind.RETURN)) public static void func(@Self BTraceTest instance,int a,int b,@Return int result){
println("调用堆栈:");
jstack();
println(strcat("方法参数A:",str(a)));
println(strcat("方法参数B:",str(b)));
println(strcat("方法结果:",str(result)));
}
}

点击Start即可开启

返回BTraceTest输入回车,观察两边的控制台信息

VisualVM + BTrace的更多相关文章

  1. 让VisualVM+BTrace进入unsafe mode

    让VisualVM+BTrace进入unsafe mode http://kenai.com/projects/btrace/pages/UserGuide BTrace很强大,但有很多安全限制,比如 ...

  2. Java BTrace实战(1)--BTrace的入门和使用

    前言: 对线上的java服务, 往往采用日志进行问题处理和分析. 倘若日志缺乏相关的信息时, 那又该如何处理? 远程调试会影响服务的正常工作, 修改代码重新部署的方案其实时性和灵活性难以保证(线上服务 ...

  3. JVM学习总结五(番外)——VisualVM

    距离上次介绍Jconsole已经时隔两周了,这期间由于工作中要用go来做一个新项目,所以精力都用在入门go上了,不过发现go语言用起来真的挺不错的,比python感觉还好点,大家没事可以了解下.   ...

  4. BTrace : Java 线上问题排查神器

    BTrace 是什么 BTrace 是检查和解决线上的问题的杀器,BTrace 可以通过编写脚本的方式,获取程序执行过程中的一切信息,并且,注意了,不用重启服务,是的,不用重启服务.写好脚本,直接用命 ...

  5. BTrace 问题辅助排查工具使用手册

    BTrace是调试神器,可以通过自己编写的脚本,获取应用的一切调用信息.而不需要重启应用! Btrace 项目源码信息(你行你上~) 项目地址:http://github.com/btraceio/b ...

  6. BTrace:线上问题排查工具

    BTrace简介 GitHub地址:BTrace 下载地址:v1.3.11.3 官方使用教程:Btrace使用教程 使用场景 BTrace 是一个事后工具,所谓事后工具就是在服务已经上线了,但是发现存 ...

  7. Btrace官方教程-中文版

    教程英文版来源:https://github.com/btraceio/btrace/blob/master/docs/usersguide.html BTrace用户指南 BTrace是一种安全,动 ...

  8. BTrace学习总结

    一.简介: 在生产环境中经常遇到格式各样的问题,如OOM或者莫名其妙的进程死掉.一般情况下是通过修改程序,添加打印日志:然后重新发布程序来完成.然而,这不仅麻烦,而且带来很多不可控的因素.有没有一种方 ...

  9. Btrace的使用方法

    本文基于<深入理解Java虚拟机:JVM高级特性与最佳实践 第2版> 写在前面: Btrace有很多用法,比如说性能监视,连接泄露,内存泄漏,多线程竞争,而本文说的只是最基本的应用打印调用 ...

随机推荐

  1. oracle忘记了sys,system 密码后怎么修改?

    一.忘记除SYS.SYSTEM用户之外的用户的登录密码.  用SYS (或SYSTEM)用户登录: CONN SYS/PASS_WORD AS SYSDBA;  使用如下语句修改用户的密码: ALTE ...

  2. linux 定时器 定时执行php

    输入命令:    crontab -e 添加定时命令 每隔一分钟执行一次php //复制一下命令即可.  */1 * * * * /usr/bin/curl -o /home/logs/temp.lo ...

  3. 天使投资、A轮、B轮、C轮

    一般是这样划分的. A轮融资:公司产品有了成熟模样,开始正常运作一段时间并有完整详细的商业及盈利模式,在行业内拥有一定地位和口碑.公司可能依旧处于亏损状态.资金来源一般是专业的风险投资机构(VC).投 ...

  4. eclipse编辑器栏上的路径怎么去掉

    找到这个按钮,点一下就可以了:

  5. android sqlite select count

    用sqlite 查数据多次都没有成功,原来是sql语句不对. 正确的示例如下: select count(*) as mycount from kehu

  6. POJ1468 Sorting Slides

    Sorting Slides Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 4442   Accepted: 1757 De ...

  7. whu暑期集训#1

    题号:SGU123----SGU131 Problem A: 题意:求斐波那契的前N项和.. 做法:直接模拟,注意得用long long Problem B: 题意:给定一个封闭的多边形,求一个点在不 ...

  8. [转载]WIKI MVC模式

    MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller). MVC模式最 ...

  9. CentOS使用vsftpd开启FTP服务以及配置用户

    1.安装服务 #yum install vsftpd 2.配置 #vi /etc/vsftpd/vsftpd.conf # 禁止匿名访问 anonymous_enable=NO # 允许本地用户登录F ...

  10. SWFUpload 在ie9上出现的bug

    SWFUpload 在ie9下会出现js错误 参考以下几个网址,备忘: http://code.google.com/p/swfupload/issues/detail?id=348 http://c ...