저는 로깅 프레임 워크로 SLF4j를 사용했으며, log4j가 지원합니다. 내 문제는 런타임에 내 로거의 로깅 수준을 변경하는 방법을 찾고 있다는 것입니다.런타임시 slf4j 레벨을 변경하는 방법은 무엇입니까?
slf4j는 자체 API를 통해이를 직접 허용하지 않으므로 로깅 공급자에 직접 액세스해야한다는 것을 알고 있습니다. 개인적으로, 나는 이것을 slf4j에서 엄청난 결핍이라고 생각한다. 그래서 지금 내 질문은 slf4j를 통해 프로그래밍 방식으로 어떤 공급자를 사용하고 있는지 어떻게 결정할 수 있는가? slf4j를 사용하는 가장 큰 목적은 당신이 공급자와 상관없이 될 수 있다는 것입니다. 여러분은 어떤 코드도 다시 코딩 할 필요없이 원하는 로깅 시스템을 쉽게 전환 할 수 있습니다. 하지만 이제 log4j를 직접 호출해야한다면 그 능력을 잃어 가고 있습니다.
적어도 Log4j를 제공자로 사용하고 있는지 확인하고 싶다면 로그 레벨을 전환 할 수 있도록 허용하고 싶습니다.
만약 내가 LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME)
이라면 결과는 org.slf4j.impl.Log4jLoggerAdapter
이고 심지어는 org.apache.log4j.Logger
이 아닙니다. (기대했던대로).
이 정보를 찾을 방법이 있습니까?
덕분에, 에릭
참조 : [slf4j 라이브러리는 어떻게 찾을 수 있습니까?] (http://stackoverflow.com/questions/10505418) –
감사합니다. 나는 왜 내가 원래의 수색에서 그것을 놓쳤는 지 잘 모르겠다. –