아파치의 access.log 와 error.log 는 때에따라 매우 유용하게 사용된다.
하지만, 불필요한 로그가 쌓여 몇 개월 손대지 못할 경우... 어마어마한 용량으로 불어나 버리기 일쑤이다.
나날이 다른 파일로 로그가 저장되도록 분산시키면, 주단위, 월단위로 삭제할 수 있어 유용하다.
cronolog 는 날짜별로 로그 파일을 분할하도록 도와준다.
위의 첨부된 cronolog의 압축과 묶음을 해제한다.
# tar xvfz cronolog-1.6.2.tar.gz
설치 방법은 표준적이어서 매우 간단하다.
# ./configure
# make
컴파일 되었다.
./src 디렉토리를 보면, cronolog 라는 파일이 생성되어 있을 것이다.
본인은 이런 도구들이 /usr/bin과 같은 디렉토리에 섞여있는 것을 좋아하지 않으므로, 아파치가 설치된 디렉토리의 아파치 도구가 들어있는 bin 디렉토리로 복사하겠다. (/usr/local/etc/httpd/bin)
# cp src/cronolog /usr/local/etc/httpd/bin/
복사한 뒤, 아파치의 conf 파일을 수정해 주어야 한다.
액세스 로그의 경로와 파일명을 재지정한다. 다음 행을 찾아본다.
CustomLog /var/log/httpd/access_log common
이 라인의 앞에 #를 붙여 주석처리하고,
#CustomLog /var/log/httpd/access_log common
행을 삽입하여
TransferLog "|/usr/local/etc/httpd/bin/cronolog /var/log/httpd/%Y%m%d_access.log
"
와 같이 넣는다. (로그파일의 경로가 /var/log/httpd 일 경우)
에러 로그도 다음과 같이 수정한다.
#ErrorLog /var/log/httpd/error_log
ErrorLog "|/usr/local/etc/httpd/bin/cronolog /var/log/httpd/%Y%m%d_error.log"
제대로 수정이 되었다면, 앞으로는
20030304_access.log, 20030304_error.log 와 같이 생성될 것이다.
아파치를 재시작 하자.
# /usr/local/etc/httpd/bin/apachectl restart
로그 디렉토리를 열어보면, 원하는 대로 파일이 재 생성됨을 알 수 있다.
cronolog 를 이용하면 1일 단위로 생성된다.
:맥노턴.
rotatelogs 를 이용할 수도 있다.
하지만, 불필요한 로그가 쌓여 몇 개월 손대지 못할 경우... 어마어마한 용량으로 불어나 버리기 일쑤이다.
나날이 다른 파일로 로그가 저장되도록 분산시키면, 주단위, 월단위로 삭제할 수 있어 유용하다.
cronolog 는 날짜별로 로그 파일을 분할하도록 도와준다.
위의 첨부된 cronolog의 압축과 묶음을 해제한다.
# tar xvfz cronolog-1.6.2.tar.gz
설치 방법은 표준적이어서 매우 간단하다.
# ./configure
# make
컴파일 되었다.
./src 디렉토리를 보면, cronolog 라는 파일이 생성되어 있을 것이다.
본인은 이런 도구들이 /usr/bin과 같은 디렉토리에 섞여있는 것을 좋아하지 않으므로, 아파치가 설치된 디렉토리의 아파치 도구가 들어있는 bin 디렉토리로 복사하겠다. (/usr/local/etc/httpd/bin)
# cp src/cronolog /usr/local/etc/httpd/bin/
복사한 뒤, 아파치의 conf 파일을 수정해 주어야 한다.
액세스 로그의 경로와 파일명을 재지정한다. 다음 행을 찾아본다.
CustomLog /var/log/httpd/access_log common
이 라인의 앞에 #를 붙여 주석처리하고,
#CustomLog /var/log/httpd/access_log common
행을 삽입하여
TransferLog "|/usr/local/etc/httpd/bin/cronolog /var/log/httpd/%Y%m%d_access.log
"
와 같이 넣는다. (로그파일의 경로가 /var/log/httpd 일 경우)
에러 로그도 다음과 같이 수정한다.
#ErrorLog /var/log/httpd/error_log
ErrorLog "|/usr/local/etc/httpd/bin/cronolog /var/log/httpd/%Y%m%d_error.log"
제대로 수정이 되었다면, 앞으로는
20030304_access.log, 20030304_error.log 와 같이 생성될 것이다.
아파치를 재시작 하자.
# /usr/local/etc/httpd/bin/apachectl restart
로그 디렉토리를 열어보면, 원하는 대로 파일이 재 생성됨을 알 수 있다.
cronolog 를 이용하면 1일 단위로 생성된다.
:맥노턴.
rotatelogs 를 이용할 수도 있다.