Ad-Hoc Logging im Betrieb
Zur erweiterten Fehleranalyse besteht die Möglichkeit, die Ausgabe von einzelnen Prozessschritten im laufenden Betrieb zu loggen. Dabei muss weder die .wrf
-Datei des jeweiligen technischen Prozesses geändert, noch der Server neu gestartet werden. Zudem wird auch das bedingte Logging in Subprozessen ermöglicht, z.B. falls ein Subprozess von einem bestimmten Hauptprozess aufgerufen wurde.
Konfiguration
Das Protkollierverhalten kann über die tracelog.properties
-Datei unter X4\Server\X4DB\0
gesteuert werden. Hier wird u.a. auch das erwartete Format beschrieben, wenn man einen Prozess bzw. Prozessschritt adressieren und das Logging anschalten möchte:
Einzelne Prozessschritte loggen: Einzelne Prozessschritte, die geloggt werden sollen, können nach folgendem Schema angegeben werden:
<Benutzer>/<Prozesspfad>/<ActionID> = 1
Bedingtes Loggen von Subprozess-Schritten: Wenn einzelne Prozessschritte in einem Subprozess geloggt werden sollen, der von einem bestimmten Elternprozess aufgerufen wurden, kann dies nach folgendem Schema angegeben werden:
<Ausführender_Benutzer>/<Prozesspfad_Elternprozess>/<Benutzer>/<Prozesspfad_Subprozess>/<ActionID> = 1
Der Inhalt der Log-Ausgabe entspricht dem Inhalt des Loggings via Log4J auf einer Transition, d.h. der Status bzw. die Daten des letzten Prozessschrittes werden über Log4J geloggt. Als Log4J-Logger wird dabei de.softproject.integration.logging.integrated.TraceLog
und als Log4J Log-Level INFO
verwendet.
Wurden Änderungen an der tracelog.properties
-Datei vorgenommen, so muss die Konfiguration neu eingelesen werden. Das Einlesen der Konfiguration kann über die MBean angestoßen werden. Dazu die MBean-Operation reloadTraceLogSettings ausführen.
Einzelne Prozessschritte loggen
Beispielkonfiguration für das Loggen eines bestimmten Prozessschrittes
1/Test/Log/logtest.wrf/2 = 1
Erläuterung
Logging ist aktiviert für:
Benutzer
1
Prozess
Test/Log/logtest.wrf
Prozesskomponente mit
Action ID 2
Bedingtes Loggen von Subprozess-Schritten
Beispielkonfiguration für bedingtes Loggen eines Subprozesses
1/Test/Log/logtestParent.wrf/1/Test/Log/logtestSub.wrf/2 = 1
Erläuterung
Logging ist aktiviert für:
Benutzer
1
Prozess
Test/Log/logtestSub.wrf
Prozesskomponente mit
Action ID 2
Bedingung:
Prozess
Test/Log/logtestParent.wrf
wurde ausgeführt vonBenutzer
1