출처  :  http://www.mimul.com/pebble/default/2009/12/27/1261911840000.html


Catalina로그를 한 파일에 누적되는 것을 피하기 위해서 보통은 cronolog,  log4j를 활용을 많이 하는데
기존 리눅스 시스템의 소프트웨어를 활용하는 방안을 하나 소개해 드립니다.


1. /etc/logrotate.d 디렉토리 안에 아래의 파일을 생성

$ cd /etc/logrotate.d$
cat  tomcat

${CATALINA_HOME}/logs/catalina.out {
  copytruncate
  daily
  rotate 30
  compress
  missingok
  notifempty
  dateext
}
$logrotate -f /etc/logrotate.d/tomcat        # 로그파일 순환 테스트


• copytruncate : 기존 파일을 백업해서 다른 파일로 이동하고 기존 파일은 지워버리는 옵션
• daily : 로그파일을 날짜별로 변환
• compress : 지나간 로그파일들을 gzip으로 압축
• dateext : 순환된 로그파일의 날짜확장자
• missingok : 로그파일이 없더라도 오류를 발생시키지 않음
• rotate 30 : 로그 파일은 30개만큼 저장된 다음 제거되거나 메일로 보내짐
• notifempty : 파일의 내용이 없으면 새로운 로그 파일을 생성 안함


2. 그외 일자별로 저장 방법

•  java.util.logging과 RollingFileHandler를 활용
•  Log4j의 DailyRollingFileAppender 활용
•  Logback의 RollingFileAppender 활용





 

+ Recent posts