问题标签 [btrace]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
672 浏览

jar - 当我使用 BTrace 时,如何修复它,“找不到代理 JAR 或没有代理类属性”?

当我使用 BTrace 时,我遇到了这个问题。但我不知道如何解决它。Linux命令是:

问题是:

未找到代理 JAR 或没有代理类属性。

0 投票
0 回答
285 浏览

btrace - 如何关闭 btrace?

我正在使用 btrace 来检测应用程序。Btrace 所做的是将字节码注入正在运行的 JVM 以跟踪目标应用程序。它还建立了一个套接字连接以在跟踪器客户端和应用程序之间进行通信。

当我停止跟踪客户端时,它不会删除注入应用程序的代码。它继续跟踪并通过此端口发回结果。由于客户端不再有任何尝试发送跟踪结果生成异常:

如何在将应用程序连接到应用程序后取消检测应用程序并正常关闭 btrace?

0 投票
1 回答
176 浏览

java - btrace visualvm 接口需要 ASM 5

当我运行这个简单的 Java8 程序时

并针对它运行这个 btrace 脚本

我在程序中收到此错误

任何帮助表示赞赏

0 投票
2 回答
245 浏览

btrace - btrace Invalid path 9116 specified: 2/No such file or directory

我在linux中使用btrace,提醒我: Invalid path 9116 specified: 2/No such file or directory 我的exec命令:btrace 9116 AllMethods.java 我的home路径没问题,我通过jps得到Pid,btrace版本是1.3.8.3

0 投票
1 回答
105 浏览

java - 在 btrace 中,如何比较和检查 Enum 对象的值?

我在 btrace 中正确设置了回调。我的参数列表包含一个自定义 Enum 对象。如果 Enum 对象等于特定值,我想打印一些东西。我可以直接比较 Enum 对象,或者将该 Enum 对象的字符串表示形式与常量字符串进行比较。

但是,str() 函数不会返回此 Enum 对象的字符串表示形式。它返回路径$class@hash。

如何比较 btrace 中的枚举对象?

谢谢!二本

0 投票
1 回答
280 浏览

java - 使用@Duration 注解时,BTrace 提供哪些时间单位?Millis,微米或纳米?在文档中找不到

查看方法“methodExit”。参数“@Duration long time”中包含哪些时间单位?

0 投票
1 回答
148 浏览

java - COMPUTE_MAXS 正在删除 StackMapTable

我正在使用开源库 Btrace 来分析 Java 应用程序。

我一直在搞砸它,因为我发现了一些错误,并且在尝试修复它们时,我遇到了一个神秘的事件。

本质上,我使用的是带有标志的 ClassWriter,COMPUTE_MAXS我的目的不是弄乱现有方法的 StackMapTables(在任何情况下)

但是,似乎虽然在COMPUTE_FRAMES某些情况下它可能不会重新计算 StackMapTables(会这样做),但实际的 StackMapTable 是“缺失的”

这是一个例子。

原始代码:

使用命令javap -p -v -c <class>,我正在查看类中每个方法的 StackMapTables - 遗憾的是,完整的输出太长了,无法放在这里,但我会提出我想要关注的重点,主要是类的构造函数。

原始构造函数:

转换构造函数:

这并不容易看到,但是在通过文本差异工具运行两个输出之后,我发现了这个:

在此处输入图像描述

显然它正在删除整个 StackMapTable。我的问题是为什么/怎么会发生这种情况?

我对COMPUTE_MAXS标志进行了研究,但我不确定这是否是预期的行为,或者这是因为其他原因而发生的。

谢谢!

更新:

我忘了把提醒我这个问题的错误:

0 投票
1 回答
75 浏览

java - 将类名动态传递给 BTrace 脚本中的 clazz 参数

当我将代理附加到 jvm 时,我需要将应用程序的包名称动态传递给 btrace 脚本以 clazz 参数。我该如何实现这一点?

0 投票
1 回答
110 浏览

java - btrace 和 java.lang.NoSuchMethodError 的奇怪之处

主要课程:

A类:

btrace 脚本:

一切都是正确的。但是:当我将 Thread.sleep(1000) 行移动到 A 类的执行函数时,如下所示:

Hello 抛出 NoSuchMethodError。

我的环境是

java 版本“1.8.0_121”
BTrace v.1.3.9 (20170111)

任何人都可以解释为什么?谢谢!

0 投票
1 回答
251 浏览

java - 如何使用 btrace 一起打印异常和参数?

我正在尝试在我的方法中打印异常和参数。但我无法从我的代码中得到任何结果。