Java Management Extensions (JMX) テクノロジを使えば、ローカルまたはリモートの Java Virtual Machine (JVM) 上で実行されている任意の Java テクノロジベースのアプリケーション (Java アプリケーション) を監視および管理できます。Java アプリケーションを Java Platform, Standard Edition (Java SE プラットフォーム) Version 6 上で実行すると、監視および管理対象として JMX エージェントによって自動的に公開されます。Java アプリケーションを Java 2 Platform, Standard Edition (J2SE プラットフォーム) 5.0 上で実行している場合は、アプリケーション起動時に com.sun.management.jmxremote.* システムプロパティーを設定することで、監視および管理対象として手動で公開できます。これらのシステムプロパティーを設定するか、あるいは Java SE プラットフォームのバージョン 6 上でアプリケーションを実行すると、プラットフォームのアウトオブボックスの監視および管理機能が有効になります。自動的に、JVM ソフトウェア内のプラットフォーム MBean サーバーが有効になり、適切に構成された任意の JMX クライアントアプリケーションの管理対象としてアプリケーションを公開するための MBean が、そのサーバーに登録されます。VisualVM はそのような JMX クライアントアプリケーションの 1 つです。
注:JMX テクノロジ、MBean、プラットフォーム MBean サーバー、および Java VisualVM を使って MBean を監視および管理する方法の簡単な概要については、「Java VisualVM MBeans Tab」ページを参照してください。Java SE プラットフォームのアウトオブボックスの監視および管理機能の概要については、「Java SE 監視および管理ガイド」の「JMX テクノロジを使用する監視と管理」を参照してください。
前述したように、Java VisualVM は、バージョン 6 の Java SE プラットフォーム上で実行されている Java アプリケーションや、バージョン 5.0 上で正しいシステムプロパティーを指定して起動された Java アプリケーションを自動的に検出して接続します。ただし、ターゲットとなる Java アプリケーション内で実行されている JMX エージェントを Java VisualVM が自動的に発見して接続できない場合があるため、明示的な JMX 接続を作成する方法も Java VisualVM に追加されました。
JMX エージェントおよびそれが公開する Java アプリケーションを Java VisualVM が自動的に発見しない場合を、次に示します。
Java VisualVM から実行中のアプリケーションへの明示的な JMX 接続を確立するには、事前にそのアプリケーションを正しいシステムプロパティーを使って起動しておく必要があります。対象のシステムプロパティーを次に示します。
com.sun.management.jmxremote.port
: アプリケーションの公開に使用するポート番号を指定するcom.sun.management.jmxremote.ssl
: Secure Sockets Layer (SSL) 暗号化を有効にしてアプリケーションへの接続をセキュリティー保護するかどうかを指定するcom.sun.management.jmxremote.authenticate
: 接続をパスワードで保護するかどうかを指定するこのセクションでは、明示的な JMX 接続経由で Java VisualVM をローカルアプリケーションに接続する方法の例を示します。
java -Dcom.sun.management.jmxremote.port=3333 \ -Dcom.sun.management.jmxremote.ssl=false \ -Dcom.sun.management.jmxremote.authenticate=false \ YourJavaAppこのコマンドでは、次のように構成された Java SE プラットフォームのアウトオブボックスの監視および管理機能を使って YourJavaApp が起動されます。
ホスト名 localhost がすでに設定されています。追加する必要があるのは、監視および管理対象としてアプリケーションを公開する際に使用するポート番号だけです。
リモートホスト上で実行されているアプリケーションへの明示的な JMX 接続を確立することもできます。その方法を次に説明します。
JMX エージェントがユーザー名とパスワードで保護されていることを知っている場合には、「Add JMX Connection」ダイアログでそれらを入力し、資格を保存すべきかどうかを指定します。資格を保存するようにした場合には、Java VisualVM は再起動時に、セキュリティー資格の再入力をユーザーに要求することなしに、JMX エージェントに自動的に再接続します。
JMX テクノロジの詳細や、Java SE プラットフォームの監視および管理の詳細については、次のドキュメントを参照してください。