메뉴 닫기

logrotate 설정방법

logrotate란 로그의 비대화를 막기위한 방법이다.

이기능을 이용하면 특정용량이 차거나 할때 새로운로그를만들면서 기존에있는로그는 다른명칭으로 바뀌게되는

설정을 작성해본다.

/etc/cron.daily/logrotate 라는 파일을 열어보면 /etc/logrotate.conf 파일을 참조하게되어있다.

/etc/logrotate.conf 파일에는 /etc/logrotate.d 라는 디렉토리를 참조하게되어있다.

그러므로 해당기능을 이용하려면 /etc/logrotate.d 라는 디렉토리안에 설정파일을 넣어주면된다.

아래내용은 /etc/logrotate.d/apache 파일의 기본설정이다.

/usr/local/apache/logs/*_log {
weekly
rotate 3
missingok
create 0600 root root
postrotate
/bin/kill -HUP `cat /usr/local/apache/logs/httpd.pid 2>/dev/null` 2> /dev/null || true
endscript

위 내용에대해 설명하자면

/ust/local/apache/logs/*_log 파일들을

weekly : 주단위로

rotate 3 : 3개의파일 이상되면 삭제

create 0600 root root : 아래와 같은 권한으로 rotation된 로그파일 생성

postrotate
/bin/kill -HUP `cat /usr/local/apache/logs/httpd.pid 2>/dev/null` 2> /dev/null || true
endscript

3문장은 rotation 후 postrotate를 통해 httpd를 재시작해준다.

위와같이 설정후 저장한뒤

logrotate -f /etc/logrotate.d/apache 으로 되는지여부를 확인해준다.

명령어를 실행하게되면 

도메인-access_log

도메인-access_log.1

이런식으로 기존에있는건 .1이 붙으면서 생성되며 새로운 로그파일을 생성해준다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다