not set

Windows용 아파치 로그관리 본문

Apache/Apache HTTP Server

Windows용 아파치 로그관리

다크곰 2009. 6. 9. 18:26
Unix, Linux 상에서의 Apache 로그 관리는 그다지 신경쓸 이유가 없다.
기본적으로 용량이나 날짜별로 로데이트를 지원하고 있어
한 파일에 누적하여 쌓이지 않기 때문이다.

이런 기능을 윈도우에서는 지원이 미약하기 때문에
아파치 설치폴더>bin>rotatelogs.exe 실행파일이 이 기능을 지원하게된다.

<VirtualHost _default_:80>
 ErrorLog logs/domain.com-error_log
 TransferLog "|C:/아파치가설치된경로/bin/rotatelogs.exe  C:/아파치가설치된경로/logs/access_log_%Y 5M"

 ServerName domain.com
 DocumentRoot "C:/아파치가설치된경로/htdocs"
</VirtualHost>

  • CustomLog "|C:/아파치가설치된경로/bin/rotatelogs.exe
    아파치 폴더/bin/rotatelogs.exe 설치된 경로와 파일명을 정확히 입력한다.
  • C:/아파치가설치된경로/logs/access_log_%Y 5M" common
    access_log_2008 로 해서 5M 넘게되면 파일이 새로 생성된다.
  • 하루(24시간)별로 새로 생성하기
    TransferLog "|/usr/local/apache/bin/rotatelogs /var/log/access_log 86400"
    예문은 access_log만 했지만 error 로그도 동일한 방법으로 관리해주면 된다.
주의사항)
아파치에서 기본으로 제공하는 rotatelog와 별도의 프로그램 cronolog는 기능상 조금 차이가 나지만
설정방법은 동일하므로 아래 cronolog글에서의 주의사항처럼 공백이나 리눅스나 유닉스머신 에서의  옵션은 사용은 불가능하다.

※ 서버를 재시작하지않고 로그를 순환할 수 있는 것이 파이프(|) 로그를 사용하는 중요한 이유다. 아파치 웹서버는 이를 위해 rotatelogs라는 간단한 프로그램을 포함한다.