2009-10-07 2 views
6

새로운 로그 파일을 사용하여 로그 파일을 압축 할 때 java.util.logging을 구성 할 수 있습니까? 예를 들어, 내 로그 구성 파일에서 추출은 다음과 같습니다압축 된 로그 파일을 사용하도록 java.util.logging을 구성 할 수 있습니까?

java.util.logging.FileHandler.level  = ALL 
java.util.logging.FileHandler.pattern = /blah.log 
java.util.logging.FileHandler.limit  = 10000000 
java.util.logging.FileHandler.count  = 5 

가 이상적으로는 현재의 로그 메시지를하고자 blah.log.1.gz을 유지하면서 blah.log.0에 쓸 수, blah.log .2.gz 등

또한 다른 로깅 프레임 워크를 사용하고 싶지 않습니다.

답변

8

네, 그렇지만 자신 만의 파일 핸들러를 작성해야합니다. FileHandler의 소스 코드를 프로젝트에 복사하면 (어떤 유용한 방식으로도 클래스를 확장 할 수 없음) open() 메서드를 MeteredStream으로 수정하십시오.

그런 다음 정상적인 구성을 사용하여 새 처리기를 사용하십시오.

3

아니요, 직접 작성하지 않고이 작업을 정기적으로 수행하는 cron 작업을 예약하면됩니다. 이것은 아마도 가장 빠른 해결책 일 것입니다.

2

Java 로깅 프레임 워크에서 사용할 수 있을지 의심 스럽습니다. 매일 모든 이전 로그 파일을 압축하는 쉘 스크립트를 설정할 수 있습니다.

정말로 자바로하고 싶다면 자신 만의 파일 핸들러를 작성해야 할 수도 있습니다.
새 파일을 만드는 방법을 확인하고 이전 파일을 압축하십시오.

관련 문제