Log4J에서 logback 1.0.13에 기반한 slf4j로 코드를 마이그레이션하려고합니다.이 코드가 잘못된 이유는 무엇입니까?
어떻게하면 다음 코드를 slf4j로 변환 할 수 있습니까?
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
// ...
ConsoleAppender stderr = new ConsoleAppender();
stderr.setTarget(ConsoleAppender.SYSTEM_ERR);
stderr.setLayout(layout);
stderr.addFilter(new CurrentThreadLogFilter());
stderr.setThreshold(Level.INFO);
stderr.activateOptions();
Logger loggerRECORD = getLoggerRECORD();
loggerRECORD.setLevel(Level.ALL);
loggerRECORD.setAdditivity(false);
loggerRECORD.addAppender(stderr);
Logger root = LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);
root.setLevel(Level.WARN);
root.addAppender(stderr);
// ...
private Logger getLoggerRECORD() {
return LoggerFactory.getLogger("com.company.MyClass");
}
나는 setLevel
, addAppender
및 setAdditivity
방법 대신에 사용 해야할지 모르겠어.
SLF4J 로거 인터페이스는 구현과 관련하여 찾고있는 메소드를 지원하지 않는다고 생각합니다. 실제 구현 (Logback의 Logger 클래스)은 setLevel() 및 setAdditive()를 지원합니다. getLoggerRECORD() 메소드의 기능은 무엇입니까? 항상 Logback logger를 반환합니까? –
@DariusX. 내 질문을 업데이트했습니다. – Stephan