Prinzip der Erstellung einer
GRMG-Anwendung
Dieser Abschnitt ist Teil des Prozesses GRMG: Instrumentierung einer Komponente. Es wird daher vorausgesetzt, dass Sie den Teil des Prozesses, der vor diesem Abschnitt durchgeführt wird, bereits ausgeführt haben.
Um die Verarbeitung der Parameter einer GRMG-Anfrage und die Erstellung einer GRMG-Antwort zu unterstützen, stehen Ihnen je nach verwendeter Entwicklungsumgebung die folgenden Hilfen zur Verfügung:
· ab Java Basic Libraries 6.20 Support Package 03 ein Satz anwendungsunabhängiger JAVA-Klassen
· ab SAP Web Application Server 6.20 Support Package 12 ein entsprechender Service und Handler-Klasse
Die GRMG-Infrastruktur sendet eine GRMG-Anfrage an einen HTTP-Server. Dort fungiert ein Servlet als GRMG-Anwendung, das als Agent eine Anwendung in einem J2EE Server überwacht. Die GRMG-Antwort schließlich wird von der GRMG-Anwendung zurück an die GRMG-Infrastruktur gesendet:

Mit den folgenden vordefinierten Java-Klassen können Sie einfach eine eigene GRMG-Anwendung implementieren:
Name der Klasse |
Beschreibung |
GrmgRequest |
Container für eine GRMG-Anfrage |
GrmgResponse |
Container für eine GRMG-Antwort |
GrmgScenario |
Container für ein GRMG-Szenario |
GrmgComponent |
Container für eine GRMG-Komponente |
GrmgProperty |
Container für eine GRMG-Parameter |
GrmgMessage |
Container für eine GRMG-Nachricht |
Siehe auch Beispiel für das Coding einer GRMG-Anwendung.

Falls Sie die o. g. Klassen im Rahmen einer J2EE-Anwendung verwenden möchten, müssen Sie in Ihrer EAR-Datei im META-INF-Verzeichnis eine Datei application-j2ee-engine.xml angeben. Diese Datei muss den folgenden Inhalt haben:
<reference
reference-type="weak">
<reference-target target-type="library"
provider-name="sap.com">
com.sap.util.monitor.grmg
</reference-target>
</reference>
<reference
reference-type="weak">
<reference-target target-type="library"
provider-name="engine.sap.com">
sapxmltoolkit
</reference-target>
</reference>
Der SAP Web Application Server ab Release 6.20 (SP 12) enthält eine einsatzbereite GRMG-Anwendung, mit der Sie alle ABAP-Komponenten überwachen können, die auf einem SAP Web Application Server ab Release 6.20 (SP 12) laufen. Dabei existieren zwei Möglichkeiten der Überwachung:
· Sie können über das Szenario die Anwendung einen Funktionsbaustein ausführen lassen, der dann alle nötigen Verfügbarkeitsüberprüfungen durchführt. Dabei können Sie Parameter und Parameterwerte übergeben.
Der Baustein kann eine Schnittstelle wie GRMG_ABAP_REFERENCE_TOOL (Funktionsgruppe GRMG) verwenden, die eine Meldung mit optionalen zugehörigen Parametern zurückgibt. Die ABAP-GRMG-Anwendung kann aber auch jeden Funktionsbaustein aufrufen und das Ergebnis des Aufrufs interpretieren, der bei einem Fehler einen Rückgabewert ungleich Null liefert.
· Sie können eine GRMG-Anfrage an die ABAP-GRMG-Anwendung ohne Angabe eines Funktionsbausteins senden. In diesem Fall antwortet die GRMG-Anwendung (oder antwortet eben nicht) auf ein Ping gegen den Anwendungsserver, der die Anfrage bearbeitet.

Falls die Standardanwendung nicht ausreicht, können Sie die Klassen CL_CCMS_GRMG_APPLICATION und CX_CCMS_GRMG_APPLICATION_ERROR auch ableiten und anpassen.

Beim Customizing eines ABAP-Szenarios erstellen Sie ebenfalls eine Customizing-Datei (siehe unter Template der Customizing-Datei erstellen). Der einzige Unterschied liegt in den folgenden optionalen Parametern, die Sie nur innerhalb eines ABAP-Szenarios verwenden können. Diese Parameter (vom ABAP-Datentyp String) werden innerhalb des Tag properties übergeben:
Parametername |
Bedeutung |
funcmod |
Name des Funktionsbausteins, der von der GRMG-Anwendung ausgeführt werden soll. Falls der Baustein in dem System aktiv ist, in dem die Anwendung läuft, wird dieser ausgeführt. Wenn nicht, wird er ausgelassen und eine entsprechende Fehlermeldung in der GRMG-Antwort zurückgegeben. |
grmg_compliant |
Kennzeichen, das angibt, ob der o. g. Funktionsbaustein GRMG-konform ist, d. h. ob seine Schnittstelle dem Baustein GRMG_ABAP_REFENRENCE_TOOL entspricht: YES/yes: sie entspricht der Schnittstelle <jeder andere Wert>: sie entspricht der Schnittstelle nicht. In diesem Fall importiert der Baustein keine Parameter und exportiert keine Meldungen. Das Ergebnis des Aufrufs wird damit nur über den Rückgabewert ermittelt: bei einem Rückgabewert 0 gibt die GRMG-Anwendung eine Meldung mit dem Meldungstext OKAY zurück, jeder andere Wert erzeugt eine Meldung mit dem Text ERROR. |
dest |
RFC-Destination, auf der der Funktionsbaustein ausgeführt werden soll |
parname<1-5> |
Namen der Parameter, die beim Aufruf eines GRMG-konformen Funktionsbausteins übergeben werden |
parvalue<1-5> |
Werte der Parameter parname<n>, die beim Aufruf eines GRMG-konformen Funktionsbausteins übergeben werden |
Um den Service nutzen zu können, starten Sie die Transaktion SICF (Pflege der Services). Der Service befindet sich im folgenden Pfad:
/default_host/sap/bc/ccms/monitoring/GRMG_APP.
· Um Anmeldedaten einzugeben, wählen Sie den Service mit Doppelklick und geben Sie die Daten in der Registerkarte Service-Daten ein. Verwenden Sie hierzu einen Benutzer mit begrenzten Berechtigungen analog zum Benutzer CSMREG.

Sie können diese Felder auch leer lassen und statt dessen Benutzer und Kennwort übermitteln, indem Sie eine RFC-Destination des Typs HTTP anlegen und dort die Benutzerdaten eingeben.
·
Um den Service zu aktivieren, wählen Sie den Service, und
wählen Sie im Menü
Service/Virt. Host →
Aktivieren.
Startseite Überwachung mit dem
Generic Request and Message Generator