[Tomcat] rotatelogs 사용 시tomcat pid가 제대로 저장되지 않는 문제

공수정·2023년 3월 29일
0

Tomcat

목록 보기
1/1

문제 상황

rotatelogs를 이용시, tomcat pid가 저장되어야하는 경로에 tomcat pid가 아닌 rotatelogs 데몬의 pid가 저장됨
shutdown.sh이나 catalina.sh stop 을 통해 종료할 때에 프로세스가 종료되지 않는 문제

해결 방안

catalina.sh 파일내용 중 tomcat.pid 저장하는 부분을 수정

  • 원본
if [ ! -z "$CATALINA_PID" ]; then
	echo $! > "$CATALINA_PID"
fi
  • 변경 후
if [ ! -z "$CATALINA_PID" ]; then
	#echo $! > "$CATALINA_PID"
	`/bin/ps -ef | grep Tomcat_instance_Name | grep java | grep -v grep | awk '{print $2}' > $CATALINA_PID`
fi

종료시에 -force 옵션추가 하면, 정상적으로 종료가 되지 않았을 때 해당 pid를 가지고 kill -9 명령어를 입력해서 종료함

출처
rotatelogs 사용시 Tomcat PID 문제

profile
계속해서 공부하는 개발자입니다 :)

0개의 댓글