apache log rotate 시키기

2012.08.14 19:22

ischo 조회 수:17249

원문 : http://www.ischo.net -- 조인상 // 시스템 엔지니어

Writer : http://www.ischo.net -- ischo // System Engineer in Replubic Of Korea

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

 

원문 : http://www.ischo.net -- 조인상 //시스템 엔지니어

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

 

rpm 으로 설치되어있는 log rotate를 사용하여 각종 로그 rotate 시키기.

 

 

1. rpm 설치 확인

# rpm -qa | grep logrotate

 

 

2. 로그 대상 확인 (소스컴파일된 아파치)

 : /usr/local/apache/logs/*log

 

3. log rotate 설정

# cd /etc/logrotate.d

# ls

acpid   cyrus-imapd  mgetty  privoxy  radiusd    samba           squid    tux      vsftpd.log
conman  exim         kdm            named   psacct   rpm        setroubleshoot  syslog   up2date  wpa_supplicant
cups    httpd        mailman        ppp     quagga   sa-update  snmpd           tomcat5  uucp     yum
   -- 기존설정 파일을 하나 복사해서 사용할 것임

# cp httpd apache-log

# vi apache-log

/var/log/httpd/*log {
    missingok
    notifempty
    sharedscripts
    postrotate
        /sbin/service httpd reload > /dev/null 2>/dev/null || true                 : 여기는 rpm 설치된 아파치를 위해서 설정된 부분임.
    endscript                                                                                               소스컴파일된 아파치를 reload 시킬수 없으므로 수정
}

--> 다음과 같이 수정

/usr/local/apache/logs/*_log {
    missingok
    notifempty
    sharedscripts
    daily                                    : 매일
    rotate 90                              : 90일간
    postrotate
        /bin/kill -HUP `cat /usr/local/apache/logs/httpd.pid 2 > /dev/null` 2 > /dev/null || true    : 아파치 reload
    endscript
}

 

4. 테스트

# logrotate -d /etc/logrotate.conf

설정오류가 있다면 여기서 오류가 남.

 

 

* 참고

  이 logrotate 설정은 다음 설정파일에 의해서 매일 동작한다.

# cat /etc/crontab

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly

 

logrotate는 위 디렉토리들에 모두 등록되어있으므로 daily 설정이라면 매일 04시 02분에 동작할 것이다.

 

 

 

 

번호 제목 글쓴이 날짜 조회 수
공지 [공지] 게시자료 열람자유. 불펌금지입니다. 조인상 2010.12.07 31437
64 kill 명령어로 줄수 있는 interrupt list ischo 2012.08.17 12639
» apache log rotate 시키기 ischo 2012.08.14 17249
62 DNS 기초에서 보안까지 조인상 2012.07.26 11510
61 아파치. 톰캣 연동 (apache+tomcat by mod_jk) ischo 2012.04.18 17416
60 SELINUX 비활성화하기 ischo 2012.04.06 15985
59 CentOS 6 에서 XDMCP 활성화 방법 ischo 2012.02.25 15448
58 리눅스 커널이 64bit 인지 확인방법 ischo 2012.02.24 35167
57 복수서버들의 서비스포트 응답여부를 확인하여 메일로 보내주는 스크립트 file ischo 2012.01.17 14778
56 리눅스에서 디스크 덤프하기 ischo 2011.12.22 22034
55 telnet 으로 메일 보내기 ischo 2011.12.07 14488
54 웹서버 포트 무응답시 메일 보내주는 스크립트 file ischo 2011.11.30 11088
53 Shell 스크립트의 내장변수 + exit code ischo 2011.11.16 16932
52 프로세스 생사여부 검사후 메일보내는 쉘스크립트 file ischo 2011.11.10 13653
51 TCP/IP Flow file ischo 2011.10.19 11691
50 ssh 접속시 로그인 속도가 느릴경우 속도 향상법 ischo 2011.08.30 23127
49 백그라운드로 프로세스 실행시키기 ischo 2011.08.25 14904
48 TCP TIME_WAIT이 많이 발생하여 문제가 되는 경우 ischo 2011.08.18 28491
47 리눅스 mdadm 을 이용한 S/W RAID 구성 [1] ischo 2011.07.20 25566
46 리눅스 Services 설명 ischo 2011.07.08 23996
45 아파치 SSL 적용된 경우 startup 시에 SSL 패스워드 자동입력시키기 ischo 2011.06.02 24384
서버에 요청 중입니다. 잠시만 기다려 주십시오...