SLF4J gegen Log4j
Was ist log4j?
log4j ist zuverlässig, schnell und flexibel logging framework (APIs) written in Java, die unter der Apache Software License vertrieben wird.
log4j kann zur Laufzeit über externe Konfigurationsdateien in hohem Maße konfiguriert werden. Es zeigt den Protokollierungsprozess in Bezug auf Prioritätsstufen an und bietet Mechanismen, um Protokollierungsinformationen an eine Vielzahl von Zielen wie eine Datenbank, eine Datei, eine Konsole, ein UNIX-Syslog usw. zu leiten (weitere Informationen zu log4j finden Sie in unserem Lernprogramm ).
Vergleich SLF4J und Log4j
Im Gegensatz zu log4j ist SLF4J (Sumsetzen Logging Facade für Java) ist keine Implementierung des Protokollierungsframeworks, sondern eine abstraction for all those logging frameworks in Java similar to log4J. Daher können Sie nicht beide vergleichen. Es ist jedoch immer schwierig, eine zwischen den beiden zu bevorzugen.
Wenn Sie die Wahl haben, ist die Protokollierungsabstraktion immer dem Protokollierungsframework vorzuziehen. Wenn Sie eine Protokollierungsabstraktion verwenden, insbesondere SLF4J, können Sie zu jedem Protokollierungsframework migrieren, das Sie zum Zeitpunkt der Bereitstellung benötigen, ohne sich für eine einzelne Abhängigkeit zu entscheiden.
Beachten Sie das folgende Diagramm, um ein besseres Verständnis zu erhalten.