os

catalina.out 막기 자료

littlecarbb 2017. 4. 27. 20:35


----------어디서 퍼옴 1 ----------------------





----------어디서 퍼옴 2 ----------------------



1) 개무시

$CATALINA_BASE/bin/catalina.sh를 편집한다.

org.apache.catalina.startup.Bootstrap "$@" start \
      >> "$CATALINA_BASE"/logs/catalina.out 2>&1 &

위와 같이 "$CATALINA_BASE"/logs/catalina.out 으로 로그를 보내는것을 아래와 같이 변경하여 보내지 않도록 한다.

org.apache.catalina.startup.Bootstrap "$@" start >> /dev/null 2>&1 &

if else로 구성되어서 아마 2군데를 편집해야 할것이다.

touch "$CATALINA_BASE"/logs/catalina.out

씰데없기때문에 주석(#)처리 하거나 삭제한다.


2) rotatecatalinalog.sh 생성 하여 cron에 등록
#!/bin/sh
LOG_DIR=/util/esb/tomcat6/logs
DATE=`/bin/date +%Y-%m-%d`
/bin/nice /bin/cp $LOG_DIR/catalina.out $LOG_DIR/$DATE.catalina.out
/bin/nice /bin/cat /dev/null > $LOG_DIR/catalina.out

 

위와 같이 해당날짜로 복사하고 원판 catalina.out은 비워주는 sh을 만들어서 crontab에 등록한다.

chmod 755 rotatecatalinalog.sh 로 권한부여도 하고

crontab -e

로 에디트 모드로 가서
59 23 * * * /util/esb/tomcat6/bin/rotatecatalinalog.sh

위 한줄 추가 23시59분에 매일 실행

 

3) cronolog사용

http://cronolog.org 설치하여 세팅

 

설치하고자 하는 디렉토리로 이동

# cd /home/esb

 

cronolog tar파일 다운

# wget http://cronolog.org/download/cronolog-1.6.2.tar.gz

 

압축해제

# tar xzvf cronolog-1.6.2.tar.gz

 

해제된 디렉토리로 이동

# cd cronolog-1.6.2

 

환경에 맞게 설치

# ./configure --prefix=/home/esb/cronolog

# make && make install

# ls -al /home/esb/cronolog/sbin

 

$CATALINA_BASE/bin/catalina.sh를 편집한다.

org.apache.catalina.startup.Bootstrap "$@" start \
      >> "$CATALINA_BASE"/logs/catalina.out 2>&1 &

 

org.apache.catalina.startup.Bootstrap "$@" \
start |/home/esb/cronolog/sbin/cronolog "$CATALINA_BASE"/logs/%Y-%m-%d.catalina.out >> /dev/null 2>&1 &