GlassFish ist ein Open-Source-Projekt für Anwendungsserver, das von der Firma Oracle gesponsert wird. Konfigurieren Sie das Site24x7-Plug-in, um die Leistung Ihrer GlassFish-Server zu überwachen.
In diesem Dokument werden die Konfiguration des Oracle GlassFish-Plug-ins und die Überwachungsmetriken beschrieben, um detaillierte Einblicke in die Leistung, Verfügbarkeit und Nutzungsstatistiken von GlassFish-Servern zu erhalten.
Metriken zur Überwachung der GlassFish-Leistung:
Beheben Sie Probleme in Ihrer GlassFish-Umgebung ganz einfach, indem Sie kritische Metriken verfolgen, darunter:
Gebundener Heap/Non-Heap-Speicher
Die Metriken "usedheapsize-count" und "usednonheapsize-count" geben die Gesamtmenge des genutzten Heap-/Nicht-Heap-Speichers in Byte an.
Maximaler Heap-/Non-Heap-Speicher
Die Metriken "maxheapsize-count" und "maxnonheapsize-count" geben die maximale Menge an Heap-/Nicht-Heap-Speicher in Byte an, die für die Speicherverwaltung verwendet werden kann.
Anfänglicher Heap-/Non-Heap-Speicher
Die Metriken "initheapsize-count" und "initnonheapsizecount" geben die Gesamtmenge an Heap-/Non-Heap-Speicher in Byte an, die die JVM ursprünglich vom Betriebssystem zur Speicherverwaltung anfordert.
Gebundener Heap/Non-Heap-Speicher
Die Metriken "committedheapsize-count" und "committedunheapsize-count" geben die Gesamtmenge an Heap-/Non-Heap-Speicher in Bytes an, die für die JVM zur Verwendung übergeben wird.
Abschluss des Objekts ausstehend
Die Metrik "objectpendingfinalization-count" gibt die ungefähre Anzahl der Objekte mit ausstehendem Abschluss an.
Blockierte Threads
Informieren Sie sich über die Anzahl der Threads, die blockiert sind und darauf warten, Objektmonitore oder Ownable Synchronizer zu erhalten, indem Sie die Metrik "deadlockedthreads" verwenden.
Gestartete Threads
Erhalten Sie mit der Metrik "totalstartedthreadcount" Informationen über die Anzahl der Threads, die seit dem Start der JVM erstellt und auch gestartet wurden.
Daemon-Threads
Informationen über die Anzahl der Live-Daemon-Threads erhalten Sie mit der Metrik "daemonthradcount".
Blockierte Threads überwachen
Erhalten Sie mithilfe der Metrik "monitordeadlockedThreads" Informationen über die Anzahl der blockierten Threads, die darauf warten, Objektmonitore zu erhalten.
Benutzerzeit des aktuellen Threads
Erhalten Sie Informationen über die CPU-Zeit für einen Thread, der im Benutzermodus ausgeführt wird, indem Sie die Metrik "currentthreadusertime" verwenden.
Maximale Anzahl von Threads
Rufen Sie mit der Metrik "peakthreadcount" Informationen über die maximale Anzahl der Live-Threads seit dem Start der JVM oder dem Zurücksetzen des Spitzenwerts ab.
Threadanzahl
Mit der Metrik "Threadcount" erhalten Sie Informationen über die Anzahl der Live-Threads, einschließlich Daemon- und Nicht-Daemon-Threads.
CPU-Zeit des aktuellen Threads
Erhalten Sie mit der Metrik "currentthreadcputime" Informationen zur gesamten CPU-Zeit für den aktuellen Thread in Nanosekunden.
Lecks in Verbindungen
Verwenden Sie die Metrik "numpotentialconnleak", um die Anzahl der möglichen Verbindungslecks zu erhalten.
Logische Verbindung freigegeben
Verwenden Sie die Metrik "numconnreleased", um die Anzahl der möglichen logischen Verbindungen zu ermitteln, die für den Pool freigegeben wurden.
Verbindungsanfragen in Warteschlange
Verwenden Sie die Metrik "waitqueuelength", um die Anzahl der Verbindungsanforderungen in der Warteschlange zu erhalten, die auf die Bearbeitung warten.
Freie Verbindungen
Verwenden Sie die Metrik "numconnfree", um die Anzahl der freien Verbindungen im Pool zu ermitteln.
Wartezeit für die Verbindung
Verwenden Sie die Metrik "averageconnwaittime", um die durchschnittliche Wartezeit pro erfolgreicher Verbindungsanfrage zu erhalten.
Verbindungen mit Zeitüberschreitung
Verwenden Sie die Metrik "numconntimedout", um die Anzahl der Verbindungen im Pool zu ermitteln, die ab der Startzeit eine Zeitüberschreitung hatten.
Erstellte Verbindungen
Verwenden Sie die Metrik "numconncreated", um die Gesamtanzahl der physischen Verbindungen zu erhalten, die seit dem letzten Zurücksetzen erstellt wurden.
Wie es funktioniert?
- Melden Sie sich bei Ihrem Site24x7-Konto an. Melden Sie sich hier an, wenn Sie noch keines haben.
- Laden Sie die neueste Version des Site24x7-Linux-Agents herunter und installieren Sie sie.
- Installieren Sie das GlassFish-Plug-in.
- Der Agent führt das GlassFish-Plug-in aus und überträgt die Daten auf den Site24x7 Server.
Voraussetzungen:
- Stellen Sie sicher, dass GlassFish auf dem Server installiert ist und ausgeführt wird.
Installation des GlassFish-Plug-ins:
- Create seperate directories for all the three plugins with the name "glassfish_jvm_memory", "glassfish_jvm_thread", "glassfish_resource_connectionpool" under the Site24x7 Linux agent's plugin directory - /opt/site24x7/monagent/plugins/ cd /opt/site24x7/monagent/plugins/sudo mkdir glassfish_jvm_memorysudo mkdir glassfish_jvm_threadsudo mkdir glassfish_resource_connectionpool
- Download the file ""glassfish_jvm_memory.py" aus unserem GitHub-Repository and place it under the "glassfish_jvm_memory" directory cd glassfish_jvm_memorysudo wget https://raw.githubusercontent.com/site24x7/plugins/master/glassfish_jvm_memory/glassfish_jvm_memory.py
- Download the file "glassfish_jvm_thread.py" aus unserem GitHub-Repository and place it under the "glassfish_jvm_thread" directory cd glassfish_jvm_threadsudo wget https://raw.githubusercontent.com/site24x7/plugins/master/glassfish_jvm_thread/glassfish_jvm_thread.py
- Download the file "glassfish_resource_connectionpool.py" aus unserem GitHub-Repository and place it under the "glassfish_resource_connectionpool" directory cd glassfish_resource_connectionpoolsudo wget https://raw.githubusercontent.com/site24x7/plugins/master/glassfish_resource_connectionpool/glassfish_resource_connectionpool.py
Schritte zum Aktivieren der Überwachung im GlassFish-Server
- The following steps need to be peformed to enable monitoring for your GlassFish server: cd /bin/asadmin./asadminset server.monitoring-service.module-monitoring-levels.jvm=LOWset server.monitoring-service.module-monitoring-levels.jdbc-connection-pool=LOW
Konfiguration des GlassFish-Plug-ins:
- Der im Plug-in-Skript angegebene Standard-Python-Pfad lautet #!/usr/bin/python. Wenn Sie einen alternativen Python-Pfad angeben möchten, ersetzen Sie den vorhandenen Pfad, dem das Shebang-Zeichen "#!" vorangestellt ist.
- Configure host and port values for the GlassFish plugin HOST = "localhost"ADMINPORT = "4848"USERNAME = NonePASSWORD = None
- Dieselben Änderungen können auch für Verbindungspool und Thread-Plug-ins vorgenommen werden.
- Save the changes and restart the agent. /etc/init.d/site24x7monagent restart
Überwachung zusätzlicher Metriken:
- Um zusätzliche Metriken zu überwachen, bearbeiten Sie eine der Plug-in-Dateien und fügen Sie die neuen Metriken hinzu, die überwacht werden müssen.
- Erhöhen Sie den Wert der Plug-in-Version in der Plug-in-Datei um die neu hinzugefügten Metriken anzuzeigen. (Ändern Sie z. B. die Standard-Plug-in-Version von PLUGIN_VERSION = "1" in "PLUGIN_VERSION = "2".)
Zugehörige Plug-ins:
- Redis-Plug-in: Zur Überwachung der Leistungsmetriken Ihrer Redis-Datenbanken
- MongoDB-Plug-in: Zur Überwachung der Leistungsmetriken Ihrer MongoDB-Datenbanken
- Memcached-Plug-in: Zur Analyse Ihres Memcached-Servers
- Nagios-Plug-in – Zur Ausführung Tausender von Nagios-Plug-ins in Site24x7, ohne einen Nagios-Server betreiben zu müssen
- Sofort einsetzbare Plug-ins – Zur Überwachung Ihres gesamten App-Stacks mit unserer umfangreichen Auswahl an Integrationen
- Benutzerdefinierte Plug-ins erstellen – Erstellen Sie benutzerdefinierte Linux- und Windows-Plug-ins und überwachen Sie benutzerdefinierte Attribute.