내 응용 프로그램에서 log4j를 설정하려고하고 제 3 자 JAR 중 하나가 내 로그 수준을 "OFF"로 계속 유지하는 것 같습니다. 해당 라이브러리의 코드가 실행될 때만 발생합니다. 이름을 알고있는 로거를 사용하지 않아서 어떻게 할 수 있는지 모르겠지만 루트 로거를 사용하지 않습니다. 나는 이것에 5 시간을 보냈으며 지금까지 나의 유일한 성취는 9000 이상의 좌절 수준을 얻는 것이었다.log4j 간섭 수준이 "OFF"로 설정되어 있습니다.
나는 윈도우 7 64 비트, 자바 6 u23에 최신 Tomcat (7.0.37)을 사용하고있다. .
log4j.properties : 테스트를 위해 내 서블릿에서 다음
log4j.logger.com.foo.bar.SearchAndReport=TRACE, stdout, file
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=D:/logTest.log
log4j.appender.file.MaxFileSize=100KB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%p] %d{dd MMM yyyy HH:mm:ss,SSS} - %C{2}.%M() - %m %n
는 내가 가진 :
는Logger log = Logger.getLogger(SearchAndReport.class);
System.out.println(log.getLevel());
이 코드마다의 doPost를 실행 또는의 doGet가 실행되고, 레벨이 수준에 유지 제 3 자 코드가 실행될 때까지 (TRACE)를 설정하고 해제합니다.
- 어떻게 다른 로거 로거 방해 할 수있는 나 자신의 이름과 설정 한 :
내 질문은?
- 어떻게 이런 일이 일어나지 않게하고 레벨을 강제로 설정할 수 있습니까?
감사합니다 :)
사용중인 타사 라이브러리는 무엇입니까? –