0

我正在尝试追踪 Grails 应用程序的内存泄漏,并且正在使用 Yourkit Profiler,但遇到了问题。

我在生产服务器上的 Tomcat6 中运行了 Grails 应用程序,并解压了 YourKit 分析器并根据文档使用运行它sudo bin/yjp.sh -attach,但出现错误:

java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.yourkit.Main$2.run(a:19)
Caused by: com.yourkit.runtime.PresentableException: com.sun.tools.attach.AttachNotSupportedException: Unable to open socket file: target process not responding or HotSpot VM not loaded
    at com.yourkit.ui.s.n.a(a:170)
    at com.yourkit.ui.s.n.a(a:176)
    at com.yourkit.ui.s.j.a(a:250)
    at com.yourkit.c.do(a:73)
    at com.yourkit.Main0.entry(a:274)
    ... 5 more

我正在使用 YourKit v10,并且在 Ubuntu 11.04 服务器上。有任何想法吗?

4

2 回答 2

1

看起来我必须以运行容器的用户身份运行。换sudo bin/yjp.sh -attach工作sudo -u tomcat6 bin/yjp.sh -attach

于 2011-09-13T23:01:18.290 回答
0

您需要先让 Attach API 工作,然后才能继续:

com.sun.tools.attach.AttachNotSupportedException: Unable to open socket file: target process not responding or HotSpot VM not loaded

请参阅 JVisualVM 常见问题解答 - 他们的故障排除也可以在此处使用。

于 2011-09-13T11:34:56.740 回答