[Java] log4j 대 logback


Answers

너? .

왜? Log4J 는 기본적으로 Logback 의해 사용되지 않습니다.

긴급한가요? 아마.

고통스럽지 않니? 아마도, 그러나 그것은 로깅 구문에 달려있을 것입니다.

LogBack (또는 SLF4J)을 최대한 활용하려면 적절한 로깅 구문 을 작성해야 합니다 . 게이머를 피할 수 있기 때문에 게으른 평가 때문에 코드가 더 빨라지고 코드 줄이 줄어들어 이점을 얻을 수 있습니다.

마지막으로 SLF4J를 적극 권장합니다. (왜 자신의 외장으로 휠을 재창조해야합니까?)

Question

우리는 자체 제작 래퍼 뒤에 log4j를 사용하고 있습니다. 우리는 이제 더 많은 기능을 사용할 계획입니다.

Logback으로 업데이트해야합니까?

(프레임 워크가 SLF4J와 같은 외관이 아님을 의미합니다)




성숙한 프로젝트 나 심지어 개발 단계의 프로젝트까지도 그러한 업그레이드로 얻는 것보다 더 많은 것을 느낄 것입니다. Logback은 분명히 여러 가지 점에서 훨씬 더 발전되었지만 작업 시스템에서 완전히 대체 할 수는 없습니다. 나는 분명히 새로운 개발을위한 로그백을 고려할 것이지만, 기존의 log4j는 이미 출시되어 있고 최종 사용자와 만났을 때 충분히 성숙하고 성숙합니다. 이것은 매우 주관적이며 비용은 스스로보아야합니다.




당신의 질문에 정확하게 답하는 것은 아니지만 스스로 만든 래퍼에서 벗어날 수 있다면 Hibernate가 (로깅 대신에) 이제 바꾼 Simple Logging Facade for Java (SLF4J) 가 있습니다.

SLF4J는 JCL (Jakarta Commons Logging)에서 관찰 된 클래스 로더 문제 또는 메모리 누수가 없습니다.

SLF4J는 JDK 로깅, log4j 및 로그백을 지원합니다. 그러면 시간이 맞으면 log4j에서 logback으로 전환하는 것이 매우 쉽습니다.

편집 : 내가 스스로를 분명히하지 않은 주장. 나는 SLF4J를 사용하여 log4j 또는 logback 사이에서 어려운 선택을하지 않아도되도록 제안했다.