2008-09-25 5 views
17

java.util.logging을 사용하는 몇 가지 webapps가 있습니다. Tomcat 5.5는 Juli logger를 사용하도록 구성되어 각 webapp에 자체 로그 파일이 있습니다. 문제는 Juli가 최대 파일 크기 및 파일 수에 대한 속성을 가지고 있지 않다는 것입니다. Juli를 사용하면 파일이 무제한으로 늘어나고 하루가 끝날 때까지만 실행됩니다. 또한 무제한의 로그 파일이 유지됩니다.로그 파일을 롤백하기 위해 Tomcat JULI 로깅을 구성하는 방법은 무엇입니까?

이 페이지의 FileHandler 속성을 볼 수 있습니다 -있는 방법에있다
이 제한이 없거나 웹 어플리케이션을 변경하지 않고 재산 (다음 줄이 아무것도하지 않고)
org.apache.juli.FileHandler.limit=102400
org.apache.juli.FileHandler.count=5

을 계산 Apache Tomcat 5.5 Documentation을 로그 파일 크기에 대한 몇 가지 유형의 경계가있는 각 응용 프로그램에 대한 고유 한 로그 파일을 얻으시겠습니까?

업데이트 : 발견 된 해결책은 줄리 로거를 전혀 사용하지 않았습니다! java.util.logging.FileHandler.limit=102400
java.util.logging.FileHandler.count=5

감사합니다,

그렉

답변

3

업데이트 : 나는 더 읽고 지금 당신의 지점을 참조하십시오. "Tomcat의 JULI 구현은 완벽한 기능을 갖춘 로깅 라이브러리가 아니며, 단순한 라이브러리의 다리 역할을하지만 JULI는 핸들러 구성에 필요한 몇 가지 속성을 제공합니다. 웃기는 말은 기본 java.util.Logging 구현이 너무 제한적이라면 훨씬 더 제한적인 구현을 제공함으로써 해결할 수 있습니다.

FileHandler javadocs

  • java.util.logging.FileHandler.limit 어느 한 파일 (바이트) 쓰기 대략 최대 양을 지정

    . 이것이 0이면 아무런 제한이 없습니다. (기본값은 제한 없음).
  • java.util.logging.FileHandler.count는 순환 할 출력 파일의 수를 지정합니다 (기본값은 1).

웹 응용 프로그램 당 하나의 파일에 대해 로거 이름으로 구분하고 각 응용 프로그램마다 로거가 생성되는 방식에 따라 다릅니다. 패키지 또는 클래스 이름을 기반으로하는 경우이를 기반으로 로그를 필터링 할 수 있습니다. 그것은 당신이 제공이

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO 
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = \ 
    2localhost.org.apache.juli.FileHandler 
3

편집 작업을 수행하는 방법을 알려주는 링크 샘플과 같다 : 그냥 ... 당신이 설정 가능하지 않을 수도 있습니다 웹 애플리케이션의 로깅 당 원 실현

제 제안은 Tomcat 6.0을 사용한다고 가정 할 때 전체 commons-logging을위한 추가 구성 요소를 컴파일하고 Log4j를 사용하여 롤링 로그를 구성하는 것입니다.

건물의 지시 여기 http://tomcat.apache.org/tomcat-6.0-doc/building.html

그런 다음 톰캣의/bin 디렉토리의 바람둥이 - juli.jar을 교체에 log4j.jar와 log4j에 함께/lib 디렉토리에있는 바람둥이 줄리-adapters.jar를 배치 .properties.

다음과 같이 사용 :

<appender name="file" class="org.apache.log4j.RollingFileAppender"> 
    <param name="File" value="logfile.log"/> 
    <param name="Threshold" value="INFO"/> 
    <param name="MaxFileSize" value="10MB"/> 
    <param name="MaxBackupIndex" value="3"/> 
    <layout class="org.apache.log4j.PatternLayout"> 
    <param name="ConversionPattern" value="%d{ISO8601} %p %m%n"/> 
    </layout> 
</appender> 
관련 문제