아파치의 accesslog 및 errorlog를 날짜별로 생성하는 방법에 대해서 알아보겠습니다.
아파치 설치 후, 서버 기동 시 logs 디렉토리에 access_log 및 error_log 파일이 생성되는데
이 각각의 파일에는 로그 정보가 누적이 되어 몇 일 몇 달이 지나버리면 어마어마한 파일 용량을 가지게 됩니다.
파일 용량이 커지다보면…log write 하는데 적지 않은 시간이 소요 되고, 이로 인하여 웹서버 성능이 저하되는 현상이 발생하게 됩니다.
그리하여 로그 파일의 용량이 커지는것을 방지하기 위해 날짜별로 로그 파일을 생성해주는 cronolog를 이제부터 알아보도록 하겠습니다.
(기본적으로 아파치에 내장되어 있는 bin/rotatelogs 유틸이 존재하지만 이보다 더 개선된 로그 유틸이 cronolog 입니다.)
1. http://cronolog.org 해당 사이트로 이동하여 DOWNLOAD 링크를 클릭합니다.
2. 최신 버전의 cronolog 위에 마우스 커서를 올려 놓으신 후, 오른쪽 마우스 클릭하여 해당 파일에 대한 주소를 복사합니다.
3. 리눅스 커멘드 라인에 아래의 명령어 실행
[kyu@qctest ~]$ wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
4. 압축을 풀어줍니다.
[kyu@qctest ~]$ tar xvfz cronolog-1.6.2.tar.gz
5. cronlog-1.6.2 디렉토리로 이동하여 아래의 명령어 실행
[kyu@qctest cronolog-1.6.2]$ ./configure –prefix=/home/kyu/cronolog
[kyu@qctest cronolog-1.6.2]$ make
[kyu@qctest cronolog-1.6.2]$ make install
6. httpd.conf 수정
ErrorLog “|/home/kyu/cronolog/sbin/cronolog /home/kyu/apache2/logs/error_log.%Y-%m-%d”
CustomLog “|/home/kyu/cronolog/sbin/cronolog /home/kyu/apache2/logs/access_log.%Y-%m-%d” combined
7. 아파치 구동 후, 로그 디렉토리로 이동하여 access_log 및 error_log 뒤에 날짜가 붙어있는지 확인 합니다.