java.util.logging.Logger
응용 프로그램에 로그인하기위한 클래스입니다. 응용 프로그램 로그가 log.txt 파일에 직접 저장되도록 FileHandler를 추가했습니다.로거가 제대로 작동하지 않습니다.
그러나 어떤 이유로 응용 프로그램이 종료 된 후 로그가 완료되지 않습니다. cmd에서는 모든 명령문을 볼 수 있지만 파일에는 추가되지 않습니다.
내가하여 로거의 FileHandler를 설정 :
private void setLogger() {
try {
FileHandler hand = new FileHandler("log/log.txt", true);
hand.setFormatter(new SimpleFormatter());
Logger log = Logger.getLogger(ImageRename.MAIN_LOG);
//log.setUseParentHandlers(false);
log.addHandler(hand);
log.setLevel(Level.ALL);
} catch (IOException e) {
System.out.println("Could Not set logger");
}
}
홍조에 문제? 그것을 해결하는 방법? 감사.
PS :. 디버깅, 나는 눈치를
사이 Logger.getLogger (ImageRename.MAIN_LOG) .getHandlers() 길이
반환 0에 반환해야 같은 것을 1 처음에는 1을 인쇄했지만, 줄을 어딘가에서는 0이됩니다.
로깅을 처리하는 가장 좋은 방법 중 하나는 [Apache log4j] (http://logging.apache.org/log4j/1.2/)로 작업하는 것입니다. 이것은 Java 용 로깅 프레임 워크 중 하나 인 사용하기 쉽고 사용자 정의가 용이합니다. – Sujay
라이브러리 팽창을 피하십시오. log4j가 * 현재 * Java 로깅 (Java 1.4에서 도입)에 비해 별다른 이점을 얻지 못합니다. –
우선 순위가 가장 높은 로깅을 시도하고 * 처리기 *의 수준을 설정해보십시오. 아마도 처리기가이 수준에서 기록하도록 설정되지 않았을 것입니다. –