JMXによるモニタリング
基礎知識とか細かい設定とか置いといて、おきらくごくらくな感じで、とりあえず動かしてみた。
デフォルトで用意されているMBeanだけでも、スレッドダンプやメモリの使用状況をリモートから監視できるので、結構いい感じです。
ローカルマシン上でのモニタリング。
JSE6より前の場合は、VMのオプションとして、以下の設定を行う必要があります。JSE6以降では、デフォルトとなっています。
com.sun.management.jmxremote
リモートマシンのモニタリング
ネットワークを介してJMXサーバを公開するためには、VMのオプションとして JMX のための RMI 用ポートを指定する必要があります。
com.sun.management.jmxremote.port=<ポート番号>
パスワードの設定や、SSLの設定をしたほうがセキュリティ上好ましいのですが、そのような必要性がない場合は、以下の設定をすることにより、セキュリティ設定を外すことができます。
com.sun.management.jmxremote.authenticate=false com.sun.management.jmxremote.ssl=false
ということで、リモートから監視したいJVMを起動するときに、とりあえず以下のようなVMオプションつけとけということですね。(セキュリティ上問題あるので、このように暗号化や認証を省略するのは推奨はできませんが)
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=<ポート番号> -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false