2010-02-12 9 views
20

Ich versuche, Visualvm und Websphere 7 auf meinem lokalen Windows-Desktop zusammenzuarbeiten. Ich versuche mich über JMX zu verbinden, aber kein Glück. Hat es irgendjemand geschafft, visialvm und websphere 7 zur Arbeit zu bringen und wie haben Sie es gemacht?Verbinden Sie Visualvm mit Websphere 7

Grüße FF

Antwort

35

bekam ich es mit Hilfe des VisualVM Team in Praha zu arbeiten:

1) Auf der Admin-Konsole (Klicken Sie auf Server ->(Danke Tomas!) Servertypen ->WebSphere Applikationsserver ->server1 ->Java und Prozessmanagement ->Prozessdefinition ->Java Virtual Machine), fügen Sie die folgende Zeile in das Feld des
Generic JVM Arguments (beachten Sie, dass die ersten System-Eigenschaft auf
nichts und kein Gleichheitszeichen für die zweite System-Eigenschaft gleich ist):

-Djavax.management.builder.initial= -Dcom.sun.management.jmxremote 

2) hinzufügen oder die folgenden drei Zeilen in der Datei/opt/IBM/ WebSphere/AppServer/java/jre/lib/Management/management.properties (oder/lib/Management/management.properties) Kommentar-:

com.sun.management.jmxremote.port=3333 
com.sun.management.jmxremote.authenticate=false 
com.sun.management.jmxremote.ssl=false 
com.sun.management.jmxremote.local.only=false 

3) Schließen Sie VisualVM an!

+0

müssen auch diese: com.sun.management.jmxremote.local.only = false – djangofan

+0

In unserem Fall auf einem Windows-Rechner müssen wir den Server neu starten. Gute Antwort. Vielen Dank. – aamir

1

Es ist möglich, diese Parameter Port, authentifizieren und ssl als JVM Argumente wie -Dcom.sun.management.jmxremote.port = 1300

Ich habe ein anderes Problem zu setzen: durch die mbean VisualVM Plugin kann ich nicht siehe irgendeine relevante Websphere mbean.

0

Es hängt davon ab, was Sie erreichen möchten und die Einschränkungen, die Sie haben. Sie müssen wissen, dass in WebSphere zwei MBean-Server vorhanden sind: Zusätzlich zum MBean-Plattformserver, der automatisch von der JRE erstellt wird, erstellt WebSphere auch einen eigenen MBean-Server. Hier sind die zwei Optionen, die Sie haben:

  1. Konfigurieren Sie Ihren WebSphere-Server wie in der Antwort von user271858 beschrieben. Dadurch können Sie eine Verbindung zum MBean-Plattformserver herstellen. Sie erhalten Zugriff auf die Standard-Plattform-MBeans, die Prozessinformationen (RAM, CPU, Threads usw.) bereitstellen. Auf der anderen Seite können Sie nicht auf MBeans von WebSphere zugreifen (indem Sie bestimmte administrative Aktionen implementieren, Anwendungsmetriken bereitstellen usw.). Sie müssen außerdem beachten, dass Sie die Sicherheit von WebSphere umgehen, indem Sie die Konfiguration des WebSphere-Servers ändern.

  2. Verbinden Sie sich mit dem MBean-Server von WebSphere. WebSphere unterstützt mehrere Protokolle (hauptsächlich SOAP und RMI), aber keine davon ist vollständig standardisiert. Dies bedeutet, dass Sie VisualVM einige der WebSphere-Bibliotheken (nämlich den Admin-Thin-Client) hinzufügen müssen. Dies ist wahrscheinlich möglich (es funktioniert mit JConsole, also sollte es im Prinzip auch mit VisualVM möglich sein), aber es ist schwierig, besonders wenn Sie eine Verbindung zu einem WebSphere-Server herstellen müssen, auf dem die Sicherheit aktiviert ist.

    Eine einfachere Option ist die Installation des VisualWAS Plugins in VisualVM.Es stützt sich auf einer Open-Source-Implementierung von einem der proprietären WebSphere-Protokolle und daher keine zusätzliche WebSphere Bibliothek erfordert.

    Dadurch erhalten Sie Zugriff auf MBeans, die im MBean-Server von WebSphere registriert sind, aber nicht für die Standard-MBeans der Plattform, d. H. Die relevanten Teile (in Bezug auf Speicher, CPU und Threads) in VisualVM sind deaktiviert. Sie können jedoch die Plattform-MBeans auf dem MBean-Server von WebSphere per Kreuz registrieren, und das VisualWAS-Projekt bietet auch hierfür eine Lösung (in Form eines Plugins, das in WebSphere installiert werden soll). Sie haben dann Zugriff auf alle Funktionen in VisualVM, und Sie müssen die Sicherheit von WebSphere nicht umgehen.