Logdatei
Laut Wikipedia:
Eine Logdatei (auch Ereignisprotokolldatei; englisch log file) enthält das automatisch geführte Protokoll aller oder bestimmter Aktionen von Prozessen auf einem Computersystem. Die korrekte Bezeichnung dafür ist deshalb Protokoll-Datei.
Log-Dateien speichern bei FE2 alle Schritte, welches das Programm durchführt. Auch alle eventuell auftretenden Fehler werden hier gespeichert.
Speicherort
.../FE2/logs/
Dateien
Standardmäßig wird pro Tag eine Log-Datei angelegt. Diese nennt sich:
log.txt
Alle alten Dateien werden mit einem Datum am Ende gespeichert. Zum Beispiel:
log.2013-04-22.0.txt log.2013-04-23.0.txt ...
Inhalt
Jede Log-Datei besteht aus vielen Einträgen. Der Grundaufbau sieht folgendermaßen aus:
Uhrzeit [Level] [Modul] Eigentlicher Text
Hier ein paar Beispiele dazu:
11:07:08 [INFO] [server.Launcher][336] Port für Client-RMI:1098 13:35:07 [WARN] [faxInput.FaxInput][305] Verwende 'Tesseract' - OCR Engine 08:43:00 [ERROR] [server.surveillance.SurveillanceTask$1][84] Tages-Überwachung läuft fälschlicherweise mehrmals. Bitte Server neustarten
Einträge mit dem Level [ERROR] deuten immer auf Fehler hin und deren Ursache sollte untersucht werden.
Log Level ändern
Was ist das Log-Level?
Das Log-Level gibt an, wie viele Informationen mitgeloggt werden und somit in die Log-Dateien geschrieben werden sollen. Je höher das Level, desto weniger wird mitgeloggt, desto weniger Speicherplatz wird verwendet und desto weniger belastet das Logging das System.
Log-Level
Es gibt verschiedene Log-Level mit unterschiedlichen Bedeutungen. Je weiter oben das Level in der folgenden Tabelle steht, desto mehr Informationen werden mitgeloggt. Je weiter unten, desto weniger.
Log-Level | Beschreibung |
---|---|
TRACE | Niedrigste Stufe. Hier werden alle Informationen (wirklich alle!) mit protokolliert. Nur für Test-Zwecken empfohlen |
DEBUG | Normale "Fehler"-Stufe. Hier werden alle Informationen zur konkreten Fehlersuche mit protokolliert. |
INFO | Normale Stufe. Hier werden nur für den Benutzer wichtige Informationen mit protokolliert. |
WARN | Warnung vor möglichen Fehlern |
ERROR | Fehler die während des Programmablaufes aufgetreten sind |
Logging beeinflussen
AchtungÄnderungen am Log-Level können zu erheblichen Performance-Einbußen führen. Für den Live-Betrieb sollten Sie unbedingt ein Log-Level größer oder gleich INFO wählen! |
Über die logback.xml
Wenn Sie die Einstellungen dauerhaft ändern möchten, sind dazu einige Schritte nötig:
- Beenden Sie FE2
- Öffnen Sie folgende Datei mit einem beliebigen Editor:
/Config/data/logback.xml
ab FE 2.14 heißt die Datei logback-2.xml
ab FE 2.16 heißt die Datei logback-4.xml
ab FE 2.17 heißt die Datei logback-7.xml
- Folgende Zeile (ganz unten) beeinflusst das Log-Level:
... <root level="debug"> <appender-ref ref="FILE" /> <appender-ref ref="STDOUT" /> </root> ...
- Ändern Sie die Zeile level="debug"" nach Ihren Bedürfnissen. Wenn Sie zum Beispiel das Log-Level auf INFO stellen möchten, muss die Zeile so aussehen:
... <root level="info"> <appender-ref ref="FILE" /> <appender-ref ref="STDOUT" /> </root> ...
Beispiel komplette Datei:
<configuration> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%d{dd.MM.yyyy} - %d{HH:mm:ss.SSS} %-5level %logger{0} - %msg%n</pattern> </encoder> </appender> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <File>logs/log.txt</File> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <FileNamePattern>logs/log.%d{yyyy-MM-dd}.txt</FileNamePattern> <maxHistory>30</maxHistory> </rollingPolicy> <encoder> <Pattern>%d{dd.MM.yyyy} - %d{HH:mm:ss.SSS} %-5level %logger{0} - %msg%n</Pattern> <charset>UTF-8</charset> </encoder> </appender> <logger name="org.apache.commons.digester.Digester" level="INFO"/> <logger name="net.sf.jasperreports.engine" level="INFO"/> <root level="info"> <appender-ref ref="FILE" /> <appender-ref ref="STDOUT" /> </root> </configuration>
- Starten Sie FE2 neu