VisualVMはJMXを介してリモートプロセスに自動的に接続できますか?

StackOverflow https://stackoverflow.com/questions/3892084

  •  28-09-2019
  •  | 
  •  

質問

リモートマシンで実行されているJavaプロセスがあり、プロセスはいくつかのMBEANをセットアップします。私も持っています jstatd Javaプロセスと同じユーザーとしてそのマシンで実行されます。 (MBEANSはプログラムで、または使用することができます -Dcom.sun.management.jmxremote... など、これは違いを生むようには見えません)。

VisualVMはaを作成できます jstatd 自動的に発見するプロセスへの接続ですが、これはMBEANやCPU履歴チャートにアクセスできないことを意味します。または、明示的なJMX接続を作成することもできます。これにより、通常の便利なツールの範囲が得られますが、アプリケーションに起動時にランダムJMXポートを割り当ててください。この構成は静的ではありません。

VisualVMをJMXを介してプロセスに自動接続させる方法はありますか?これには、JMXポートを自動表示する必要がありますが、私は考えていただろう jstatd それをすることができます。 VisualVMがこれを自動化するためのプラグインを知っている人はいますか?

役に立ちましたか?

解決

残念ながら、ランダムJMXポートをリモートアプリケーションに割り当てる方法はありません。リモートアプリケーションを開始できます

-Dcom.sun.management.jmxremote.port=<fixed port>
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false

visualvmはこの構成を介して読み取ることができます jvmstat (JSTATDで提供)とリモートアプリケーションへのJMX接続を自動的に開きます。そのため、固定ポートをリモートアプリケーションに割り当てる必要があります。それを手に入れると、すべてが正常に動作し、VisualVMはJMXを介してアプリケーションに自動的に接続します(実際、両方のデータを組み合わせます jvmstat およびjmx)。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top