Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 스프링게시판
- spring
- Stateless
- 스프링 게시판
- Java
- 지족동
- Render
- 재정의
- SpringFramework
- State
- 둔산동
- springboot
- Maven
- mybatis
- 스프링
- 자바
- 다형성
- 리액트
- spring게시판
- react
- rest
- 스프링부트
- 스프링프레임워크
- reactjs
- mysql
- spring framework
- Restful
- Ajax
- Gradle
- 컴포넌트
Archives
- Today
- Total
Dev.GA
[WAS] Tomcat 로그 설정(무분별하게 커지는 catalina.out 용량 설정하기) 본문
[WAS] Tomcat 로그 설정(무분별하게 커지는 catalina.out 용량 설정하기)
Apache Tomcat을 사용하다보면 catalina.out이라는 tomcat로그가 쌓인다. 이 로그파일을 관리하지 않는다면 catalina.out은 삭제되지 않고 계속해서 로그가 쌓이게 되는 문제가 발생된다. 이를 방치하면 몇십 GB는 물론이며 몇백 GB까지 올라가 디스크 용량에 무리를 주게 되는데 이를 관리하는 방법에 대해 알아보자.
방법은 간단하다. Tomcat 경로(/tomcat경로/bin/)에 있는 catalina.sh 파일을 수정해주면 된다.
■ Before
elif [ "$1" = "start" ] ; then
...(생략)...
shift
touch "$CATALINA_OUT"
if [ "$1" = "-security" ] ; then
if [ $have_tty -eq 1 ]; then
echo "Using Security Manager"
fi
shift
eval "\"$_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 "&"
else
eval "\"$_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 "&"
fi
if [ ! -z "$CATALINA_PID" ]; then
echo $! > "$CATALINA_PID"
fi
echo "Tomcat started."
"$CATALINA_OUT" 이부분으로 검색하여 start구문을 찾아 위에 강조된 부분을 아래와 같이 수정하면 된다.
■ After
elif [ "$1" = "start" ] ; then
...(생략)...
shift
#touch "$CATALINA_OUT"
if [ "$1" = "-security" ] ; then
if [ $have_tty -eq 1 ]; then
echo "Using Security Manager"
fi
shift
eval "\"$_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 \
"2>&1" \| /usr/sbin/rotatelogs "$CATALINA_OUT".%Y-%m-%d 86400 540 "&"
#>> "$CATALINA_OUT" 2>&1 "&"
else
eval "\"$_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 \
"2>&1" \| /usr/sbin/rotatelogs "$CATALINA_OUT".%Y-%m-%d 86400 540 "&"
#>> "$CATALINA_OUT" 2>&1 "&"
fi
if [ ! -z "$CATALINA_PID" ]; then
echo $! > "$CATALINA_PID"
fi
echo "Tomcat started."
상단 touch를 이용해 CATALINA.OUT 로그파일을 생성하는 부분을 주석처리하고
하단에 로그를 수집하여 파일에 저장하는 형태를 날짜 형태로 바꾸어 주면된다.
이렇게 수정하면 catalina.out에 용량이 늘어나지 않게 되면서 날짜별로 로그파일이 생성된다.
Comments