0

我已经在我的生产服务器上启动了 jprofiler 并且在进行了一些分析之后我已经杀死了它(kill -9 )。

现在我试图重新启动它并只收到“未找到未配置的 JVM”。消息,但是 jps 命令说我的应用程序正在运行(我可以看到它实际上是由我自己运行的)。

可能 jprofiler 会在某个文件中存储有关其当前配置的 jvm 的信息,并且 kill 命令阻止它更新此文件。那么如何手动清理呢?

ps 我尝试删除然后再次解压缩 jprofile,仍然无法正常工作。

4

3 回答 3

11

JProfiler 通过作为 JDK 一部分的“附加 API”查找 JVM。查看$TMP/hsperfdata_$USER由热点 JVM 创建的目录。它应该包含所有正在运行的 JVM 的 PID 文件。如果没有,请删除该目录并重新启动所有 JVM。

于 2012-02-07T13:03:01.057 回答
1

看看这个 QA,除非你杀死 jp,否则不可能在 java 进程上卸载 Jprofiler 代理。

我不确定你是否真的能杀死特工。

“未找到未分析的 JVM。” 当您启动 Jprofiler 两次时会出现消息。尝试重新启动受监控的 java 应用程序。

于 2016-09-28T07:37:55.143 回答
0

在 WLS 服务器上,这通常意味着您重新启动了服务器并有两个 JVM 运行。我运行它来启动 jpenable: ./jpenable --gui --port=8888 --pid=$WLS_ID 并得到这个错误: PID 14690 的 JVM 不是未分析的。

杀死列出的一个: kill -9 14690

使用此输出重新运行上面的 jpenable 启动命令: Connecting to weblogic.Server [18037] ... 您现在可以使用 JProfiler GUI 连接端口 8888

18037是无法连接JProfiler客户端的JVM的PID

于 2020-05-15T22:39:34.217 回答