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

  1. Dateilog: Standartmäig werden alle Meldungen in eine Log-Datei mit dem aktuellen Datum unter %PROGRAMDATA%\T4DT GmbH\TbCommunicator\Logs abgelegt. 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.
  2. 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.
  3. 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>
  • Improve this Doc
© 2020, T4DT GmbH