Ein Logger ist eine Meldungsquelle. Ein Programm, das Logging-Daten schreibt, erhält von Log4j sogenannte Logger-Objekte und gibt seine Meldungen über diese Objekte aus.
Namensbereich
Der Namensbereich der Logger ist hierarchisch strukturiert. Die Namenskonvention ist dieselbe wie für Java-Packages, d.h. die einzelnen Ebenen der Hierarchie sind mit Punkten im Namen voneinander getrennt. Innerhalb dieser Hierarchie erben die Logger ihre Eigenschaften von ihren Parents, es sei denn es sind explizit eigene Eigenschaften für sie definiert. Die Wurzel der Hierarchie bildet der „Root-Logger“, der keinen eigenen Namen hat und immer vorhanden ist.
Beispiel 14 Logger-Namensbereich
Der Logger mit dem Namen BeanConnect
ist der (direkte) Parent-Logger des Loggers mit dem Namen BeanConnect.info
und ist ebenfalls der Parent-Logger des Loggers mit dem Namen BeanConnect.Datasources.OLTP
.
Level
Der Level ist eine Eigenschaft, die sowohl einem Logger als auch einer Meldung zugewiesen werden kann. Wenn der Logger aufgerufen wird, identifiziert das LoggingProgramm den Level der Meldung. Abhängig davon, welcher Level dem betreffenden Logger zugewiesen wurde, entscheidet Log4j, ob die übergebene Meldung protokolliert wird oder nicht. Es werden nur diejenigen Meldungen protokolliert, bei denen der Meldungs-Level größer oder gleich dem Logger-Level ist. Mit dem Level OFF
wird der Logger deaktiviert.
Log4j unterstützt folgende Level (absteigend):
Level | Bedeutung |
| Schwerwiegender Fehler, höchster Level |
| Fehler |
| Warnung |
| Informationen |
| Debug-Ausgabe |
| Trace-Ausgabe, niedrigster Level |
| Dieser Level kann nur Loggern zugewiesen werden. Sämtliche Meldungen, die über diesen Logger ausgegeben werden, werden unterdrückt. Der Logger ist ausgeschaltet. |
Beispiel 15 Logging-Level
Wenn ein Logging-Ereignis mit dem Level DEBUG
an einen Logger übergeben wird, dem der Level INFO
zugewiesen ist, wird die Meldung unterdrückt. Meldungen der Level INFO
, WARN
, ERROR
und FATAL
werden jedoch ausgegeben.
Wenn Sie den Logger-Level ERROR
zuweisen, werden nur Meldungen mit dem Level ERROR
und FATAL
ausgegeben.