JProfiler - 未检测到由不同用户运行的 jvm

Posted

技术标签:

【中文标题】JProfiler - 未检测到由不同用户运行的 jvm【英文标题】:JProfiler - not detecting jvm run by different user 【发布时间】:2012-04-16 06:54:28 【问题描述】:

我正在尝试分析(使用 jprofiler)在 linux 机器中运行在 tomcat 中的应用程序。 tomcat 使用不同的用户帐户运行,我无权访问该 tomcat 帐户。我正在尝试使用我的用户帐户运行 jprofiler。但是Jprofiler没有检测到tomcat使用的jvm。

有没有办法检测使用与 jprofiler 不同的用户帐户运行的 jvm?

感谢任何帮助。谢谢

【问题讨论】:

您使用的是什么版本的 JProfiler,您的 Tomcat 安装使用的是什么 JVM?从JProfiler documentation 看来,需要 JVM 1.6 才能使用此功能。 你能分享你的tomcat启动脚本吗?您确定调试挂钩已添加到启动 JRE 的行吗? 【参考方案1】:

通常只有在其他进程使用相同的用户帐户运行时才能附加到正在运行的进程。

JProfiler 具有分析使用本地系统帐户运行的 Windows 服务的功能,但在 Linux 上,唯一的选择是 su 到相应的用户。

当然你可以随时使用集成向导(Session->Integration Wizards->New Server集成)来修改Tomcat启动脚本。

【讨论】:

感谢 Kegal,我们的 tomcat 环境有些复杂(不像普通的单个文件夹提取,而是使用 yum 安装,并分发到多个目录,启动脚本是自定义的)。所以我们选择了 su 选项,我们的管理员提供了切换到 tomcat 帐户的权限。从 tomcat 帐户,运行 jpenable 有助于将应用程序附加到 jprofiler GUI。谢谢大家

以上是关于JProfiler - 未检测到由不同用户运行的 jvm的主要内容,如果未能解决你的问题,请参考以下文章

自定义属性未传递到由 AWS Cognito 创建的 ID_TOKEN

java内存检测工具JProfiler8.0和eclipse memory analyzer不能用。

v-model 不会检测到由 jQuery 触发事件所做的更改

链接器错误,使用 g++ 链接到由 gcc 编译的库,未定义对该函数的引用

JProfiler 可以在没有 GUI 的情况下运行吗?

JProfiler性能分析