如何使用eBPF(BCC)跟踪java进程



我想在eBPF中使用Uprobe来跟踪我编写的Java程序,但我不知道如何找到与Java程序对应的符号表。在C语言中,编译后会生成与平台相关的可执行文件,通过可执行文件可以获得该方法的相应地址。但是Java是一种解释语言,没有可执行文件,eBPF是一个Linux工具,不知道Java语言的相关信息。我知道JVM中的方法可以使用USDT进行跟踪,例如method__entry,但这并不能为您提供有关方法参数的信息,所以有没有一种方法可以使用eBPF跟踪Java函数?BCC,使用USDT以高级语言打印方法流程图。

不是Java跟踪专家,但我认为您需要了解perf-map-agent

这是Brendan Greggs在他关于perf和CPU火焰图的帖子中提到的,我相信这也适用于eBPF和perf。这篇文章给出了一个如何从容器中调用该工具的例子,以使用BCC工具生成火焰图。

相关内容

  • 没有找到相关文章

最新更新