|
<< Klicken Sie, um das Inhaltsverzeichnis anzuzeigen >> Navigation: Technisches > Logging |
Die Server-Komponenten von EMIL schreiben ihren Ablauf in Protokolldateien. Wie ausführlich protokolliert wird, steuert ein zentraler Eintrag in der config.ini des Servers. So lässt sich das Protokoll im Normalbetrieb knapp halten (nur Fehler) und bei Bedarf zur Diagnose gezielt ausführlicher schalten, ohne in den Programmcode eingreifen zu müssen.
Jeder Serverprozess (Applikationsserver, ITC-Connect, Wartung, RITA-Worker) liest die Einstellung beim Start einmal ein. Eine Änderung wird daher erst nach einem Neustart wirksam (siehe Hinweis am Ende).
Die Protokollierung wird im Abschnitt [LOGGING] eingestellt. Beide Werte sind optional; fehlen sie, gelten die hier gezeigten Voreinstellungen:
[LOGGING]
LEVEL=error
IMPORTLEVEL=info
• LEVEL - Ausführlichkeit der allgemeinen Server-Protokolle (Applikationsserver, ITC-Connect, RITA-Worker, Wartung sowie die Auswertungs- und Pflegeläufe). Geschrieben nach server.log. Voreinstellung error.
• IMPORTLEVEL - Ausführlichkeit der Datenimport-Läufe (z.B. EMIL4, KRhOKo, DocuMed.Rh, Rheumadok). Diese schreiben in eine eigene Datei itcimport.log und werden bewusst getrennt gesteuert, damit ein Import sein detailliertes Protokoll behält, unabhängig vom allgemeinen LEVEL. Voreinstellung info.
Als Wert sind die folgenden Stufen zulässig (Groß-/Kleinschreibung egal). Jede Stufe schließt alle schwereren Meldungen mit ein: Wer auf info stellt, erhält Informationen, Warnungen und Fehler. Ein nicht erkannter Wert wird wie error behandelt.
• error - nur Fehler. Knappstes Protokoll, Voreinstellung für LEVEL.
• warning - zusätzlich Warnungen.
• info - zusätzlich Informationsmeldungen zum normalen Ablauf und Fortschritt. Voreinstellung für IMPORTLEVEL.
• trace - zusätzlich sehr ausführliche Ablaufmeldungen.
• debug - alles, inklusive Entwickler-Detailmeldungen. Maximale Ausführlichkeit.
Nicht alle Stufen werden überall mit Meldungen gefüllt - der Wert lässt sich zwar immer setzen, bleibt aber teils ohne zusätzliche Ausgabe:
• error, warning und info sind die im Normalbetrieb genutzten Stufen und decken den praktischen Bedarf ab.
• trace ist vorgesehen, wird derzeit aber von keiner Komponente erzeugt - das Protokoll entspricht damit praktisch der Stufe info.
• debug wird nur von einzelnen Spezialkomponenten (Gateway, RITA-Worker) genutzt; für die allgemeinen Server- und Import-Protokolle bringt es keine zusätzliche Ausgabe.
Hinweis: Start- und einige Statusmeldungen (z.B. der Hinweis, dass ein Lauf wegen laufender Wartung übersprungen wurde) werden unabhängig vom eingestellten Level immer geschrieben, damit der Betrieb auch bei LEVEL=error nachvollziehbar bleibt.
Die Dateien liegen im Stammverzeichnis der Serverinstallation. Die wichtigsten sind server.log (allgemeiner Serverbetrieb, gesteuert über LEVEL) und itcimport.log (Datenimporte, gesteuert über IMPORTLEVEL). Erreicht eine Datei ihre Größengrenze, wird sie automatisch umbenannt und eine neue begonnen; ältere Dateien werden in begrenzter Zahl aufbewahrt. Das Schreiben ist threadsicher, sodass parallel laufende Vorgänge sauber protokolliert werden.
Nach jeder Änderung in der config.ini muss der Applikationsserver über den Dienst ITC Serverguard neu gestartet werden, damit die Werte wirksam werden.