0

我在 linux 服务器上有一个 java 进程,它使用这个选项运行:-Dcom.sun.management.jmxremote

所以我不能只通过在我的本地电脑上运行的 jconsole 连接到这个进程(因为既没有设置端口也没有设置 -Dcom.sun.management.jmxremote.ssl=false 选项)。

但是,我怎样才能连接到应用程序并在它的某些 MBean 上运行一些操作?这可能吗?我可以通过 ssh 访问服务器,并且能够在服务器上“本地”运行它(但遗憾的是没有更改选项)

4

1 回答 1

0

根据JMX文档-Dcom.sun.management.jmxremote选项

Enables the JMX remote agent and local monitoring via JMX connector published on a private
interface used by jconsole. The jconsole tool can use this connector if it is executed by 
the same user ID as the user ID that started the agent. No password or access files are 
checked for requests coming via this connector.

命名有点不幸,因为它实际上只启用本地监控。

由于您不能更改选项但可以通过 SSH 访问服务器,因此唯一的选择是使用 X 服务器转发 ( ssh -X ... ) 并运行jconsole(或者更好的jvisualvm,它具有远程运行的特定优化)。

于 2013-05-10T13:38:57.897 回答