Linux/Note

logrotate

Lee seongwoo 2024. 9. 25. 01:17
반응형

logrotate가 정상 동작 하는지 최소한의 설정으로 확인해 보자

 

#vi /etc/logrotate.d/apache

/program/apache/logs/access_log {

size +1k

missingok

notifempty

create 0600 root root

compress

dateext

postrotate

/usr/bin/killall -HUP httpd endscript

}

 

logrotate 옵션

rotate 30(숫자) : log파일 30개 이상 되면 삭제

maxage 30(숫자) : 30일 이산된 로그 파일 삭제

size : 지정한 용량이 되면 로그로테이트를 실행한다. 10k, 10M 이런식으로 지정한다.

create : [권한 유저 그룹] 으로 rotation된 로그파일 생성

notifempty : log 내용이 없으면 rotation 하지 않는다.

ifempty : 로그파일이 비어있는 경우에도 로테이트한다.

monthly : 월 단위로 로테이트 한다.

daily : 월 단위로 로테이트 한다.

weekly : 월 단위로 로테이트 한다.

compress : rotate 된 로그 gzip 압축

nocompress : 압축을 원치 않는다.

mail admin@mail : 로테이트 설정에 의해 보관주기가 끝난 파일을 메일로 발송한다.

mailfirst admin@mail : 로테이트시 신규파일 이전의 로그를 메일로 발송한다.

nomail : 메일로 통보받지 않음.

errors admin@mail : 로테이트 실행시 에러가 발생하면 이메일로 통보한다.

prerotate-endscript : 사이의 명령어를 로그파일 처리전에 실행한다.

postrotate-endscript : 사이의 명령어를 로그파일 처리후에 실행한다.

extension : 로테이트 후 생성되는 파일의 확정자를 지정한다.

copytruncate : 이옵션을 넣지 않으면 현재 사용중인 로그를 다른이름으로 move하고 새로운 파일을 생성한다.

 

logrotate 실행

  • f : 강제 실행
  • d : 디버그 모드
  • v : 실행과정을 화면에 표시

#/usr/sbin/logrotate -f /etc/logrotate.conf

#/usr/sbin/logrotate -d /etc/logrotate.conf

#/usr/sbin/logrotate -vdf /etc/logrotate.conf

반응형