Jconsole – ein zentrales J2SE-Tool

Als Entwickler wird man natürlich sofort mit der Jconsole loslegen wollen. Der erste Schritt besteht darin, den JMX Agent in der Anwendung zu aktivieren. Lokale Verbindungen sind dabei am einfachsten zu konfigurieren und zu benutzen. Um die JVM verwaltbar zu machen, ergänzt man die Befehlszeile java -Dcom.sun.management.jmxremote WatchMe.jar um Dcom.sun.management.jmxremote

WatchMe ist eine einfache Beispielanwendung, die in diesem Artikel verwendet wird. Ihre Einzelheiten werden später erläutert.

Screenshot

In einem anderen Fenster führt man die Jconsole aus. Diese findet man im bin-Verzeichnis des JAVA_HOME-Verzeichnisses, auf Windows-Rechnern also normalerweise unter c:Programme Javajdk1.5.0_02binJconsole.exe. Wenn die Jconsole läuft, öffnet sie das neue Connection-Fenster. Dort gibt es drei Registerkarten, von denen im Moment aber nur die mit der Bezeichnung „Local“ interessant ist. Alle überwachbaren Java-VMs sind aufgeführt, zusammen mit der Prozess-ID. Hier wählt man WatchMe und stellt die Verbindung her. Jconsole präsentiert nun eine Übersicht in der Summary-Ansicht.

Screenshot

Diese liefert die folgenden Informationen:

  • Zeiten – Uptime, CPU-Zeit und Compile-Zeit (das ist die Zeit, die im JIT-Compiler verbracht wird)
  • Threads – Anzahl von Live-Threads, Daemon-Threads und gestarteten Threads und die Maximalzahl aktiver Threads
  • Speicher – Heap-Größe, Objekte, die auf Finalisierung warten, sowie statistische Angaben zum Garbage Collector
  • Klassen – Anzahl der geladenen und entladenen Klassen
  • Betriebssystem – im Betriebssystem verfügbarer Speicherplatz, freier Speicher und virtueller Speicher

Threads, Speicher und Klassen bieten noch detailliertere Informationen, die über die Registerkarten oben im Fenster zugänglich sind. Da wäre zunächst einmal die Registerkarte Memory mit weiteren Informationen zum Speicher.

Screenshot

In der Speicher-Ansicht erhält man eine grafische Darstellung der Speichernutzung und kann sich bestimmte Teile des Zuordnungssystems anzeigen lassen. Die Pegelanzeigen rechts unten bieten einen Überblick darüber, wie die einzelnen Pools innerhalb dieses Zuordnungssystems verwendet werden. Man beachte die Schaltfläche „Perform GC“, welche die beobachtete Anwendung eine Speicherbereinigung durchführen lässt.

Screenshot

In der Threads-Ansicht sieht man ein Diagramm, das die Thread-Nutzung im Zeitverlauf anzeigt. Darunter findet sich eine Liste von Live-Threads, die man auswählen kann, um Details zum aktuellen Ausführungsstatus zu erhalten. Falls man es mit sehr vielen Threads zu tun hat, kann man die Zahl der angezeigten Threads mithilfe des Filter-Feldes reduzieren.

Screenshot

Die Klassen-Ansicht ist nur ein Diagramm der Anzahl der geladenen Klassen, wobei man über eine Auswahlliste den Zeitbereich für die Ladestatistik festlegen kann.

Darüber hinaus bietet die Jconsole noch zwei weitere Registerkarten: VM und MBeans.

Screenshot

Die VM-Registerkarte liefert Details über die beobachtete Java-VM, einschließlich Klassenpfad, Kommandozeilenoptionen, Host-CPU-Typ und weitere statistische Daten zum Betriebssystem.

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Jconsole – ein zentrales J2SE-Tool

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *