공유할 서비스 선택

TECH


TECH

Middleware [TOMCAT] log 관리

페이지 정보

작성자 partner 아이디로 검색 전체게시물 댓글 0건 조회 363회 좋아요 0회 작성일 18-11-19 10:32

본문

tomcat의 로그종류

1. catalina.out : 서버의기동,정지, 서비스의개시, 정지정보, standard output, standard error

2. catalina.YYYY-MM-DD.log : 서버의기동,정지, 서비스의개시, 정지정보(tomcat 자체에관한)

3. host-manager.log : Tomcat Host Manager Web app 로그 (가상호스트매니저)

4. manager.log : Tomcat Manager Web App 로그 (웹콘솔)

5. localhost.log : host( VirtualHost 같은) 한정한 로그

6. stderr.log : 표준에러출력

7. stdout.log : 표준출력

8. admin.log : tomcat web server adminstartionTool 로그

*catalina.out과 catalina.log 의 차이점: 서로 유사한것처럼 보이나 tomcat에서 생성하는 로그 이외에 standard output, standard error 의 로깅은 제외된다.

즉, 소스에서 System.out.println 이나 System.err.println 으로 남기는 로그가 있다면

그 내용은 오직 catalina.out 에서만 찾아볼 수 있다.

(standard output : 웹페이지에 코딩해논 system.out.println() 디버그 메시지 출력)

1. Logrotate 데몬으로 rotate 하기

$ cd /etc/logrotate.d

$ cat > tomcat

/var/local/tomcat/logs/catalina.out { =>톰캣의 로그가 기록될 경로로 지정

Copytruncate #백업본을 생성하면 원본의 내용을 지우는 형태

Daily          # '일'단위 파일생성 로그파일을 1일에 한번 백업

rotate 30      # 보관주기는 30일 단위(이후삭제?) 최대로그파일개수를30개제한

Missingok    # 로그파일이 생성되지 않는 경우 오류처리 하지 않음

notifempty  # 로그로 기록할 내용이 없을때 신규로그파일 생성안함

Dateext      # YYYYMMDD 형식으로 생성

#Compress # 'rotate' 내 로그파일은 압축보관(gzip)

}

1.1  test 해보기

[root@yui logrotate.d]# /usr/sbin/logrotate -d /etc/logrotate.d/tomcat6

reading config file /etc/logrotate.d/tomcat6

reading config info for /home/monwas/apache-tomcat-7.0.82/logs/catalina.out

 

Handling 1 logs

 

rotating pattern: /home/monwas/apache-tomcat-7.0.82/logs/catalina.out monthly (1 rotations)

empty log files are not rotated, old logs are removed

considering log /home/monwas/apache-tomcat-7.0.82/logs/catalina.out

log does not need rotating => 아직 설정값의 날짜가 되지 않아서 순환할 필요없음.

 

날짜 변경

[root@yui logrotate.d]# vi /var/lib/logrotate.status

"/home/monwas/apache-tomcat-7.0.82/logs/catalina.out" 2018-6-29 를 한달전인

"/home/monwas/apache-tomcat-7.0.82/logs/catalina.out" 2018-5-29 로 변경

 

실행

[root@yui logrotate.d]# /usr/sbin/logrotate /etc/logrotate.d/tomcat6

 

logs 디렉토리 확인

[WAS@yui logs]$ ls -lrt

total 12

-rw-rw-r-- 1 WAS WAS    0 Jun 29 15:55 manager.2018-06-29.log

-rw-rw-r-- 1 WAS WAS    0 Jun 29 15:55 host-manager.2018-06-29.log

-rw-rw-r-- 1 WAS WAS    0 Jun 29 15:55 localhost_access_log.2018-06-29.txt

-rw-rw-r-- 1 WAS WAS 1796 Jun 29 16:14 localhost.2018-06-29.log

-rw-rw-r-- 1 WAS WAS 8133 Jun 29 16:23 catalina.out-20180629

-rw-rw-r-- 1 WAS WAS    0 Jun 29 16:23 catalina.out

 

2. log level 변경

catalina.log info 변경

1catalina.org.apache.juli.FileHandler.level = INFO

1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs

1catalina.org.apache.juli.FileHandler.prefix = catalina.[/code]

catalina.out info 변경 (catalina.out은 날짜별로 log를 관리하지못함)

TOMCAT_HOME/conf/logging.properties 에서 아래 FINE를 INFO로 변경

java.util.logging.ConsoleHandler.level = FINE

java.util.logging.ConsoleHandler.formatter = java.util.logging.simpoleformatter

3. 불필요한 로그 없애기

3-1. catalina.out 삭제

파일의 용량이 커진다고 무조건 지우면안되고 아래를 이용해야함.
Tomcat shutdown 후 로그 삭제하고 스크립트 변경
TOMCAT_HOME/bin/catalina.sh

검색어 : CATALINA_OUT

touch "$CATALINA_OUT"

if [ "$1" = "-security" ] ; then

if [ $have_tty -eq 1 ]; then

echo "Using Security Manager"

fi

shift

eval $_NOHUP "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $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 "&"

>> /dev/null 2>&1 &

 

else

eval $_NOHUP "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \

-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \

-Dcatalina.base="\"$CATALINA_BASE\"" \

-Dcatalina.home="\"$CATALINA_HOME\"" \

-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \

org.apache.catalina.startup.Bootstrap "$@" start \

# >> "$CATALINA_OUT" 2>&1 "&"

>> /dev/null 2>&1 &

 

fi

첨부파일

댓글목록

등록된 댓글이 없습니다.

Total 6건
게시물 검색

주식회사 클럭스| 대표 : 이찬호| 사업자등록번호 : 107-87-27655
주소 : 서울특별시 영등포구 국회대로 800, 여의도파라곤
E-mail : sales@chlux.co.kr
Copyright © 클럭스 www.chlux.co.kr All rights reserved.
상단으로Top