Sun Java Solaris コミュニティー My SDN アカウント SDN に参加
 

Java VisualVM


Java VisualVM ドキュメントの索引に戻る

アプリケーションの監視

Java VisualVM では、ローカルアプリケーションやリモートアプリケーションのデータは、そのアプリケーションに固有のタブ内に表示されます。Java VisualVM 内であるアプリケーションを開くと、メインウィンドウの新しいタブ内にそのアプリケーションが開かれます。アプリケーションタブは複数個開くことができます。

アプリケーションの監視

Java VisualVM を使えば、ローカルアプリケーションを監視し、Java 仮想マシン (JVM) 内でのメモリーヒープ、スレッドアクティビティー、およびロード済みクラスに関するハイレベルのデータをリアルタイムで表示できます。アプリケーションの監視は、それに伴うオーバーヘッドが少ないため、長時間行うことができます。

「Monitor」タブのスクリーンショット

監視データは次のグラフ内に表示されます。

  • Heap: 「Heap」グラフには、ヒープの合計サイズと現在使用中のサイズが表示されます。これらは、Java テクノロジベースのアプリケーション (Java アプリケーション) から java.lang.Runtime.totalMemory() 呼び出しと java.lang.Runtime.freeMemory() 呼び出しを使って取得できる数値です。
  • PermGen: 「PermGen」グラフには、Permanent 世代領域の、時間の経過に従った変化が表示されます。Permanent 世代とは、ヒープ内で、クラスやメソッドのオブジェクトが格納される領域のことです。非常に多数のクラスをロードするアプリケーションでは、-XX:MaxPermSize オプションを使って Permanent 世代のサイズを増やす必要がある場合があります。
  • Classes 「Classes」グラフには、ロードされたクラスと共有クラスの合計数の概要が表示されます。
  • Threads: 「Threads」グラフには、アプリケーションの JVM 内に含まれるライブスレッドとデーモンスレッドの数の概要が表示されます。ある特定時刻のアプリケーションスレッドに関する正確なデータを取得して表示する必要がある場合には、Java VisualVM を使ってスレッドダンプを取ることができます。スレッドの操作方法の詳細については、次のドキュメントを参照してください。

「Monitor」タブに含まれるボタンを使って、次のアクションを実行できます。

  • Perform GC: ガベージコレクションを即座に実行するには、「Perform GC」をクリックします。
  • Heap Dump: ヒープダンプを取るには、「Heap Dump」をクリックします。ヒープダンプを取ると、そのヒープダンプを表示するタブが、アプリケーションタブ内で開かれます。「Applications」ウィンドウ内のアプリケーションのノードの下に、ヒープダンプのノードが表示されます。ヒープダンプの操作方法の詳細については、次のドキュメントを参照してください。

Java VisualVM ドキュメントの索引に戻る