Für die Protokollierung werden Anwendungslog-Objekte im System definiert. Durch die Objektdefinition erfolgt eine Zuordnung zu einem Arbeitsgebiet. Ein Objekt kann außerdem in Unterobjekte unterteilt werden.
Die Protokollierung erfolgt über Funktionsbausteine und wird objektspezifisch abgelegt.
Das Protokoll zu einem Objekt setzt sich folgendermaßen zusammen:
Er liefert die Informationen, wer wann mit welchem Programm oder welcher Transaktion welches Ereignis ausgelöst hat. Er enthält außerdem die Problemklasse der im Protokoll enthaltenen Nachricht mit der höchsten Dringlichkeit.
Die Nachrichten werden nach ihrer Dringlichkeit in Problemklassen unterteilt.
Die Protokolldaten werden zunächst im lokalen Gedächtnis gesammelt und anschließend auf die Datenbank geschrieben. Dies Verfahren beschleunigt die Verarbeitung und verringert die Anzahl der Datenbankzugriffe. Es ist jedoch auch möglich, Protokolldaten portionsweise in die Datenbank zu schreiben, um bei einem Abbruch der Anwendung, beispielsweise bei einem Systemabsturz, die bis dahin gesammelten Protokolldaten nicht zu verlieren.
Die protokollierten Daten können in der Datenbank gelesen und am Bildschirm zur Anzeige gebracht werden. Es ist auch möglich, die im lokalen Gedächtnis mit einer Protokollnummer zwischengespeicherten Protokolldaten zu lesen und anzuzeigen (Message-Sammler).
Die Protokolle werden mit einem Verfalldatum versehen, bis zu dem sie mindestens in der Datenbank gehalten werden müssen. Danach können sie durch ein Löschprogramm aus der Datenbank wieder entfernt werden.
Sowohl zum gesamten Protokoll als auch zu jeder einzelnen Nachricht eines Protokolls können auf zwei Arten detailliertere Informationen hinterlegt werden:
Bei der Auswertung der Protokolle wird auf Anfrage entweder der Textbaustein mit den angegebenen Parametern angezeigt oder der User-Exit ausgeführt.
Zusätzlich können in einer INDX-artigen Tabelle beliebige weitere Informationen abgelegt werden, die bei der Auswertung vom User-Exit verwendet werden.
Dadurch wird es möglich, beispielsweise Listen abzuspeichern, die bei der Auswertung der Protokolle mit Hilfe des User-Exits angezeigt werden können.
Darüber hinaus können klassifizierende Attribute (Wichtigkeit des Protokolls bzw. der Nachricht) angegeben werden.
Wenn Sie eine eigene Aufbereitung der Protokolle wünschen, können Sie Funktionsbausteine zum Lesen aus der Datenbank oder aus dem lokalen Gedächtnis verwenden.
Bei Bedarf können Protokolle gelöscht werden.