2016-06-27 3 views
5

나는 클래스의 로거를 얻을이 같은 로깅 수준을 구성 할 수 있습니다 내가 log4j에 2와 동일한 작업을 수행하려면 어떻게Log4J 2로 프로그래밍 방식으로 로거 구성? SLF4J와

private static Logger logger = (Logger) LoggerFactory.getLogger(SomeClass.class.getName()); 
logger.setLevel(Level.TRACE); 

를?

+1

log4j2의 설명서에는 어떤 내용이 기록되어 있습니까? –

답변

4

먼저, setLevel에 대한 지원은 SLF4J에서 제공하지 않는 경우 - SLF4J 로거 인터페이스는 setLevel이 없습니다 방법. API로서 SLF4J는 로깅 구현이 구성을 수행하는 방법에 대해 전혀 알지 못합니다.

샘플 코드를 보면 Logger에 대한 캐스트가 표시됩니다.이 코드는 ch.qos.logback.classic.Logger이므로이를 수행 할 때 Logback에 묶여 있음을 의미합니다.

게리의 대답은 정확하며 Log4j 2와 Logback 간의 근본적인 차이점 중 하나를 강조 표시합니다. Logback을 사용하면 LoggerFactory에서 가져온 것과 동일한 Logger에 구성이 밀접하게 연결됩니다. Log4j를 사용하면 애플리케이션이 얻는 로거와 완전히 다른 설정을 통해 레벨을 수정합니다.

관련 문제