log4j는 한때 위용을 떨쳤던 강력한 logging framework였다. 하지만 세월이 흐르고 기술은 발전하여 더 나은 logging framework들이 등장했다. 성능적인 측면이나 기능적인 측면에 더욱 발전하여 전환은 선택이 아닌 필수가 되었다. 그중 springboot 공식 logging framework로 사용될만큼 인정을 받은 logback으로 전환을 하는 방법에 대해 알아보자. 더불어 다음부터는 쉽게 logging framework 전환을 쉽게 하기 위해 slf4j 를 사용하도록 하자. pom.xml library 변경 log4j log4j log4j 1.2.17 slf4j + logback org.slf4j slf4j-api 1.7.25 ch.qos.logback logback-class..
기존 log를 관리하기 위한 구현체로써 log4j가 사용되었다. 그러나 보다 안정성이 높고 편리하게 log를 관리하기 위해 Logging framework인 Slf4j(Simple Logging Façade for Java)와 그 구현체로써 Logback이 고안되었다. Slf4j는 일명 Façade 패턴으로, 이를 사용하면 구현체의 종류와 상관없이 일관된 로깅 코드를 작성할 수 있으며 구현체를 변경할 경우에도 최소한의 수정으로 교체가 가능하다. 이에 맞춘 Logback은 log4j의 후속 버전으로 만든 Logging 라이브러리이다. Logback은 springboot의 기본 Logging framework로 사용될만큼 범용적이고 다양한 기능을 가지고 있다. log 관리 및 처리 구조는 다음과 같다. Lo..
프로젝트를 하다 보면 LogFactory 관련 오류가 나는 경우가 있다. 말그대로 LogFactory 클래스를 찾지 못해서 발생하는 exception이다. 이유는 다 exclusion 만 시켰지 '연결'을 시켜주지 않아서이다. org.springframework spring-core commons-logging commons-logging ${org.springframework.version} 보통 이런 식으로 slf4j로 logging을 하기 위해 commons-logging을 exclusion을 시킨다. 그리고 slf4j, 구현체 logging framework를 dependency에 추가를 하고 다음을 추가해줘야 한다. org.slf4j jcl-over-slf4j ${slf4j.version} jc..