회원가입

로그인

아이디
비밀번호
ID/PW 찾기
아직 회원이 아니신가요? 회원가입 하기

[아파치로그강좌1] cronolog를 이용하여 아파치 Log 분할하기

Profile
:맥노턴
아파치의 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 를 이용할 수도 있다.

Profile
:맥노턴
레벨 30
569482/686490
81%
McNorton & Education Lab.
Director
댓글
0
댓글 쓰기
권한이 없습니다.

로그인

아이디
비밀번호
ID/PW 찾기
아직 회원이 아니신가요? 회원가입 하기