Apache Log 파일 자르기
로빈아빠
본문
아파치 로그 자르기
Apache Log 파일 자르기에 대해서 이야기 하겠습니다.
본문은 문서까지 필요를 느끼지 못해서, 이렇게 포스트에 글을 올립니다.
우선 아파치 로그파일은 파일이 커지면 커질수록 로딩속도, 처리속도가 상당히 느려집니다.
그래서 이걸 어느 시점에서 잘라주는게 좋습니다. 또 그 자른 파일을 따로 백업을 해 놓으셔도 좋습니다.
자르는 기준은 두가지가 있습니다. 하나는 용량을 기준으로 자르는 방법과 다른 하나는 시간을 기준으로 자르는 방법이 있습니다. 용량을 기준으로 하는 방법은 제가 잘 모르기 때문에 다음에 올려드리겠습니다.
시간을 기준으로 하는 방법은 의외로 쉽습니다.
httpd.conf 파일에 보시면 아래와 같은 환경설정 라인이 있습니다.
CustomLog "/usr/local/apache/logs/access_log"
ErrorLog "/usr/local/apache/logs/error_log"
이와 같이 있습니다.
이걸 조금만 손봐주면 로그파일 잘라주는게 됩니다.
CustomLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/access_log 86400" common
TransferLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/access_log 86400"
ErrorLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/error_log 86400"
다음과 같이 해주시면 됩니다.
자세한 설명을 하자면 처음에 나오는 " | " 이거는 영어 " I " 가 아니며 그렇다고 L의 소문자도 아닙니다. 파이프(|) 를 말합니다. 그리고 /usr/local/apache/bin/rotatelogs가 잇는데 이거는 아파치 자체 내장된 프로그램을 뜻합니다. 한마디로 rotatelogs라는 프로그램을 이용하여 로그 파일을 자르겠다는 소리입니다.
/usr/local/apache/logs/access_log 이거는 로그파일을 어디에 저장할건지 저장경로를 뜻합니다. 86400은 시간입니다. 초단위로 되어 있으며, 어느 정도 시간이 지나면 자를 껀지를 말하는겁니다. CustomLog 만이 맨 뒤에 common이 붙고 나머지는 붙지 않습니다.
참고로 이 프로그램을 돌렸던 컴퓨터는 Sun blade 100, Solaris 9, apache 1.3 을 기준으로 하였습니다.
Apache Log 파일 자르기에 대해서 이야기 하겠습니다.
본문은 문서까지 필요를 느끼지 못해서, 이렇게 포스트에 글을 올립니다.
우선 아파치 로그파일은 파일이 커지면 커질수록 로딩속도, 처리속도가 상당히 느려집니다.
그래서 이걸 어느 시점에서 잘라주는게 좋습니다. 또 그 자른 파일을 따로 백업을 해 놓으셔도 좋습니다.
자르는 기준은 두가지가 있습니다. 하나는 용량을 기준으로 자르는 방법과 다른 하나는 시간을 기준으로 자르는 방법이 있습니다. 용량을 기준으로 하는 방법은 제가 잘 모르기 때문에 다음에 올려드리겠습니다.
시간을 기준으로 하는 방법은 의외로 쉽습니다.
httpd.conf 파일에 보시면 아래와 같은 환경설정 라인이 있습니다.
CustomLog "/usr/local/apache/logs/access_log"
ErrorLog "/usr/local/apache/logs/error_log"
이와 같이 있습니다.
이걸 조금만 손봐주면 로그파일 잘라주는게 됩니다.
CustomLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/access_log 86400" common
TransferLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/access_log 86400"
ErrorLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/error_log 86400"
다음과 같이 해주시면 됩니다.
자세한 설명을 하자면 처음에 나오는 " | " 이거는 영어 " I " 가 아니며 그렇다고 L의 소문자도 아닙니다. 파이프(|) 를 말합니다. 그리고 /usr/local/apache/bin/rotatelogs가 잇는데 이거는 아파치 자체 내장된 프로그램을 뜻합니다. 한마디로 rotatelogs라는 프로그램을 이용하여 로그 파일을 자르겠다는 소리입니다.
/usr/local/apache/logs/access_log 이거는 로그파일을 어디에 저장할건지 저장경로를 뜻합니다. 86400은 시간입니다. 초단위로 되어 있으며, 어느 정도 시간이 지나면 자를 껀지를 말하는겁니다. CustomLog 만이 맨 뒤에 common이 붙고 나머지는 붙지 않습니다.
참고로 이 프로그램을 돌렸던 컴퓨터는 Sun blade 100, Solaris 9, apache 1.3 을 기준으로 하였습니다.
댓글목록
등록된 댓글이 없습니다.