Log4j срещу JCL

Търся по-актуални препоръки за JCL. Трябва да избера между използването на JCL или просто използването на прав Log4j. Виждам предимствата на JCL, но статии като http://www.qos.ch/logging/thinkAgain.jsp ме остави малко неспокоен. Тези статии обаче са малко стари и търсенето на корекции на грешки в JCL изглежда показва, че някои от тези проблеми може да са разрешени. Надявам се на по-скорошен поглед върху проблема. някакви мисли?


person Adam    schedule 15.10.2009    source източник


Отговори (3)


Е, това не е директен отговор към вас, но силно препоръчвам да използвате Simple Logging Facade for Java (SLF4J) с изпълнение на Logback. Проектът Logback е предназначен да бъде наследник на проекта Log4j и е изграден от основателя на Log4j и автора на споменатата статия.

SLF4j предоставя чист интерфейс към различните инструменти за регистриране, с адаптери за стари инструменти за регистриране. Това е полезно, когато разчитате на пакети, които разчитат на log4j и/или JDK logger.

предишен въпрос обсъди някои от причините да използвате проект SLF4J .

person notnoop    schedule 15.10.2009
comment
Гледах и се интересувах от SLF4J, но, за съжаление, това не е опция на този етап. Има твърде много бюрокрация, през която ще трябва да преминем, за да получим одобрение (правен, преглед на FOSS, преглед на сигурността и т.н.), а графикът ни не го позволява. По принцип трябва да избирам между System.out.println, Log4j или JCL. Технически сме обвързани със стандарт за кодиране, който казва да използваме JCL, но мисля, че можем успешно да спорим за изхода си от този... - person Adam; 15.10.2009

Разгледайте Фасада за просто регистриране за Java (SLF4J). Статията, която споменахте, говори за „проблема с зареждащия клас“ и SLF4J трябва да отговори на това.

person jdigital    schedule 15.10.2009

Освен ако не трябва да поддържате нещо по-старо от java 1.4, помислете просто за използване на java.util.logging. Стандартът е по-добър от по-добрия и по този начин изобщо няма да имате проблеми със зареждането на класове.

person Sean Reilly    schedule 15.10.2009
comment

Трябва да можете да получите стойността на типа, като използвате този E4X:

xml.node.(descendants("subnode")[email protected]("8")).@type;
- person notnoop; 15.10.2009