2012-03-09 4 views
2

tomcat 6.0.x에서 log4j [1]를 추가하면 "catalina"파일에 로그가 생성됩니다. 그러나 기본값 catalina.out은 여전히 ​​생성되고 로그로 채워집니다. 따라서 질문 :Tomcat 6 log4j - linux - 안전하게 catalina.out을 제거하십시오.

catalina.out 파일 (서버 실행 중)을 삭제해도 안전합니까? 그렇다면이 삭제를 tomcat 시작 스크립트에 추가 할 수 있습니까? 그렇다면 누구나 파일과 필요한 스크립트를 지적 해주십시오. 바람둥이가 더 이상 존재하지 않기 때문에 catalina.out 생성을 중단 할 수 있습니까? 사전 사람

  1. http://tomcat.apache.org/tomcat-6.0-doc/logging.html

감사합니다!

답변

6

톰캣이 표준 출력 및 표준 오류가 catalina.out 리디렉션이 파일을 생산 중단 logging.properties에서 핸들러를 제거 할 수 있어야한다처럼 빠른 RTFM은 그것은 보인다. 따라서 직접 쓰기/쓰기 쓰기 및 log4j ConsoleAppender 메시지는 catalina.out으로 이동합니다. 자세한 내용은 catalina.sh file을 참조하십시오. 완전히 해제하려면 CATALINA_OUT 환경 변수 설정은/dev/null로 표준 출력 및 표준 오류를 리디렉션 할 수 있습니다 :

export CATALINA_OUT=/dev/null 

그러나 나는 것을, catalina.out 크기를 줄이고 주기적 오류 메시지를보고 모니터링하는 대신에 ConsoleAppender를 해제하는 것이 좋습니다 log4j를 우회하여 stdout으로 갈 수 있습니다.

+0

ConsoleAppender를 사용하지 않는 것이 좋지만 어떻게해야하는지는 언급하지 마십시오. – rooby

+0

.handlers = 1catalina.org.apache.juli.AsyncFileHandler –

-1

catalina.out 파일을 삭제하려는 이유가 있습니까? 잠재적 인 중요한 이벤트 메시지가 누락 될 수있는 것 같습니다. 아마 단지 그렇지 않으면 당신이 그것을 삭제 한 경우 부정적인 컨테이너의 기능에 영향을 미칠 것이라는 이유를 생각할 수 없다

org.apache.catalina.level=INFO

을 설정하는 것이 좋습니다. * nix에서는 inode에서 diconnected 된 파일의 파일 디스크립터에 여전히 쓰기를 설치하고 (그렇지 않으면 도달 할 수없는 경우) 컨테이너에 파일 잠금이 있기 때문에 창에서 삭제할 수 없습니다.

logging docs은 - 당신은 그냥

+0

catalina.out을 삭제하는 이유는 log4j를 사용하기 때문에 Tomcat 로그가 다른 파일 "catalina"에서 생성되기 때문입니다. 그래서 우리는 같은 로그를 두 번 가지고 있습니다. 게다가, catalina.out은 정말로 커집니다. – nonouco

+0

당신은 문서를 참조해야하지만, 제 경험상 카탈로니아로가는 길을 찾는 것처럼 보이는 특정 메시지가 있습니다. 특히 클래스 경로 문제 및 치명적인 컨테이너 오류와 관련된 문제. 나는 당신의 카탈로니아 어 로깅 설정의 자세한 정보를 줄이는 것이 좋습니다. – nsfyn55

+0

참고로, 당신이 참조하는 로그가 기록되기 전에 더 많은 정보가 필요하기 때문에 더 자세한 정보를 표시하지 않으므로 catalina.out은 쓸모가 없습니다. (표준 출력에 관심이 없습니다. 서버) – nonouco