Logkonfiguration
Der TbCommunicator verwendet das Framework Log4Net
als Loggingframework. Die Konfiguration des Frameworks findet über die Datei
logger.config im Installationsverzeichnis statt. In dieser Datei können auch
weitere Ausgaben hinzugefügt werden. Dazu sei hier auf die
Dokumentation
von Log4Net verwiesen.
Wichtig
Log4Net ist der .Net ableger ders Logginframeworks Log4J. Dennoch ist und war Log4Net nicht von der Log4Shell Sicherheitslücke betroffen, da diese eine Java spezifische Sicherheitslücke nutzte.
Standartmäßig sind drei Ausgaben aktiviert
- Dateilog: Standartmäig werden alle Meldungen in eine Log-Datei mit dem
aktuellen Datum unter
%PROGRAMDATA%\T4DT GmbH\TbCommunicator\Logsabgelegt. Es wird empfolgen von Zeit zu Zeit zu prüfen, ob alte Log-Datein gelöscht werden können. Erfahrungsgemäß sind die Logdaten von mehr als drei Monaten nicht mehr notwendig. - Konsolenausgabe: Die Konsolenausgabe enthält standartmäßig die selben Meldungen, wie die Dateiausgaben. So kann beim manuellen Ausführen direkt erkannt werden, ob die Operation erfolgreich war.
- Katalogvalidierung: Immer wenn ein Katalog erstellt wird, werden die Ergebenisse der Validierung in einer gesonderten Datei abgelegt. So kann einfach überprüft werden, ob noch Nacharbeiten in der Wawi notwendig sind.
Loglevel
Log4Net besitzt sechs verschiedene sogenannte LogLevel. Dies sind Stufen, die die kritikalität eine Meldung beschreiben. In aufsteigender Reihenfolge sind dies:
| Stufe | Beschreibung |
|---|---|
TRACE |
Sehr detailiere Meldungen. Im Protokoll werden auch Serveranfragen und Antworten protokolliert. Dies erzeugt sehr große Log-Dateien. |
DEBUG |
Erhöhte Meldungsanzahl. Die Meldungen enthalten auch Zwischenergebnisse, die helfen können den genauen Entstehungszeitpunkt eines Fehlers einzugrenzen. |
INFO |
Eine Meldung, die eine gewöhnliche Operation beschreibt. |
WARN |
Eine Warnung, das eine Operation möglicherweise in der Zukunft zu einem Problem führen kann. Die Aktuelle ausführung ist jedoch nicht beeinträchtigt. |
ERROR |
Es ist ein Fehler aufgetreten, sodass eine Funktion nicht ordnungsgemäß erfüllt werden konnte. |
FATAL |
Es ist ein Fehler aufgetreten, der ein sofortiges beenden des Programs notwendig gemacht hat. |
Standartmäßig werden nur Meldungen mit dem Level INFO und höher ausgegeben.
Das globale Log-Level kann an folgender stelle geändert werden.
<log4net>
<!-- ... -->
<root>
<level value="INFO" />
<!-- ... -->
</root>
<!-- ... -->
</log4net>
Manuelles hinzufügen des Katalogberichts
Der Validierungsbericht des Katalogs wurde erst mit der Version 1.13.0
eingeführt. Wurde die logger.config vorher manuell bearbeitet fehlen die
Notwendigen ergänzungen.
Um die Ausgabe nachträglich hinzuzufügen, müssen im folgenden markierte Zeilen
in die logger.config eingefügt werden.
<log4net>
<root>
<level value="INFO" />
<appender-ref ref="ColoredConsoleAppender" />
<appender-ref ref="FileAppender" />
<appender-ref ref="CatalogReport" />
</root>
<appender name="CatalogReport"
type="log4net.Appender.FileAppender">
<file type="log4net.Util.PatternString" value="%envFolderPath{CommonApplicationData}\T4dt GmbH\TbCommunicator\CatalogValidation\Validation report %date{yyyyMMdd-hhmm}.txt" />
<appendToFile value="false" />
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="WARN" />
<levelMax value="FATAL" />
</filter>
<filter type="log4net.Filter.LoggerMatchFilter">
<loggerToMatch value="T4dt.TbCommunicator.Filters" />
</filter>
<filter type="log4net.Filter.LoggerMatchFilter">
<loggerToMatch value="T4dt" />
<acceptOnMatch value="false" />
</filter>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%message%newline" />
</layout>
</appender>
</log4net>