2008.05.19 20:33
roglotate 라는 패키지를 이용하여 로그를 관리하는 방법에 대하여 알아봅니다.
1. 먼저 패키지가 설치되어 있는지 확인합니다.
2. 설정파일은 /etc/logrotate.conf 입니다. 일반적으로 아래와 같이 되어있습니다.
[root@sakang logrotate.d]# vi /etc/logrotate.conf
# see "man logrotate" for details
# rotate log files weekly
weekly
# keep 4 weeks worth of backlogs
rotate 4
# create new (empty) log files after rotating old ones
create
# uncomment this if you want your log files compressed
#compress
# RPM packages drop log rotation information into this directory
include /etc/logrotate.d
# no packages own wtmp -- we'll rotate them here
/var/log/wtmp {
monthly
create 0664 root utmp
rotate 1
}
# system-specific logs may be also be configured here.
~
위 설정파일을 보면 /etc/logrotate.d 를 include 하고 있습니다.
또한 매주 4번 순환합니다.
3. 아파치 로그파일이 어떻게 순환되고 있는지 살펴보겠습니다.
[root@sakang log]# vi /etc/logrotate.d/apache
/usr/local/apache/logs/access_log {
compress
weekly
postrotate
/usr/bin/killall -HUP httpd
endscript
}
/usr/local/apache/logs/error_log {
compress
missingok
postrotate
/usr/bin/killall -HUP httpd
endscript
}
compress --> 순환되어진 파일을 압축합니다.
weekly --> 매주 rotate 합니다. weekly 외에 daily 와 monthly 도 있습니다.
로테이트 후 postrotate 와 endscript 사이에 있는 명령(/usr/bin/killall -HUP httpd)을 실행합니다.