태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

Linux2010.07.17 16:48


톰캣서버의 로그파일은 그대로 두면 사이즈가 엄청나게 커져 있음은 물론이고,
한 파일에 지금까지의 로그가 모두 기록되어 있기 때문에 필요한 정보 검색에도 불편함이 있다.
그래서 로그파일을 년/월/주/일 등의 간격으로 로테이션 시킬 필요가 있다.

지금 일하고 있는 회사에서도 상당히 많은 리눅스 서버에서 톰캐서버를 가동시키고 있는데
일주일에 한번 메인터넌스 작업중 톰캣을 정지시키고 수동으로 백업하는 작업을 해오고 있었다.

로그로테이션에 대해 알아보니 여러가지 방법이 있었는데 그 중에 추가 설치 없이 제일 편하게 사용할 수 있는 방법이
아파치 서버를 설치하면 기본 설치되는 "rotatelogs" 이다.

설정방법은 간단하다.

%CATALINA_HOME%bin/catalina.sh 수정 

1. touch "$CATALINA_BASE"/logs/catalina.out 를 삭제 또는 커멘트 처리

2. "$CATALINA_BASE"/logs/catalina.out2>&1 & 를 다음과 같이 수정
 | /usr/local/apache/bin/rotatelogs "$CATALINA_BASE"/logs/catalina.out.%Y-%m-%d 86400 540 &

단, 수정할 부분이 두 줄이므로 주의할 것(두 줄다 수정)
86400은 일단위로 로테이션(초단위 설정)
540은 표준시와 한국시간과의 시간차

위의 설정을 완료한 뒤, 톰캣서버를 재기동하면 catalina.out.yyyy-mm-dd 형식의 파일이 생성되어 있음을 알 수 있다.

이상으로 로테이션 설정은 완료.

이전 파일을 삭제하거나 압축해서 보관하는 쉘을 Cron에 등록해서 정기적으로 관리하면 더 좋겠다.

'Linux' 카테고리의 다른 글

한 서버에 두 개 버전의 PostgreSQL 설치하기  (0) 2010.10.30
Tomcat Catalina.out 로그로테이션  (1) 2010.07.17
CentOS NTP 설정하기  (0) 2010.07.11
Posted by 허공답보

댓글을 달아 주세요

  1. 배성수

    안녕하세요.
    좋은 글 보고 따라 실행하려는데 오류가 떠서 문의 드립니다.
    우선 tomcat version은 7.X이고
    catalina.sh를
    eval \"$_RUNJAVA\" \"$LOGGING_CONFIG\" $JAVA_OPTS $CATALINA_OPTS \
    -Djava.endorsed.dirs=\"$JAVA_ENDORSED_DIRS\" -classpath \"$CLASSPATH\" \
    -Djava.security.manager \
    -Djava.security.policy==\"$CATALINA_BASE/conf/catalina.policy\" \
    -Dcatalina.base=\"$CATALINA_BASE\" \
    -Dcatalina.home=\"$CATALINA_HOME\" \
    -Djava.io.tmpdir=\"$CATALINA_TMPDIR\" \
    org.apache.catalina.startup.Bootstrap "$@" start \
    #>> "$CATALINA_OUT" 2>&1 "&"
    >> |/usr/local/apache2/bin/rotatelogs "$CATALINA_BASE"/logs/catalina.out.%Y-%m-%d-%H-%M 60 540 & 위와 같이 수정했더니 파이프(|) 연산자에서 오류가 뜨더군요.이는 ">>"를 삭제해도 마찬가지입니다.
    그래서 그 윗줄 주석을 보니 꺽쇠만 있고 파이프 연산자가 없길래
    >> /usr/local/apache2/bin/rotatelogs "$CATALINA_BASE"/logs/catalina.out.%Y-%m-%d-%H-%M 60 540 &
    이렇게 수정했더니 오류는 안뜹니다.
    아직 권한문제(apache와 tomcat) 때문에 정확한 로그를 확인하지는 못한 상황이지만
    unix 명령어를 잘 모르는 사용자로써 제가 조치한 사항(파이프 연산자 뺀)이 맞는지 문의 드려요~
    이글 보시면 답글 부탁드립니다~

    2013.01.15 09:14 신고 [ ADDR : EDIT/ DEL : REPLY ]