본문 바로가기

Apache / Tomcat

[Apache] rotatelogs를 이용하여 월별로 접속 로그 쌓기

반응형


아파치를 운영해본 사람들은 알겠지만 아파치에서 쌓는 접속 로그는 별다른 설정을 하지 않으면 해당 파일에 계속 로그를 쌓게 된다. 즉 1개 파일에 10GB, 20GB 등등 계속 쌓게 되는데, 사실 아파치 로그가 필요 이상으로 커지는것은 좋지 않다.



사용자가 접속을 할때마다 Apache는 로그를 남겨야 하는데, 로그 파일의 사이즈가 클 경우 마지막줄에 로그를 기록하는데 시간이 오래걸려 오히려 아파치 성능이 떨어지는 문제가 발생한다. 또한 로그 분석 및 보관시에도 불편함이 따르므로 가급적이면 로그를 월별 또는 일별로 저장되게끔 하는게 좋다.



아파치 로그를 월별 또는 일별로 저장되게 하기 위해서는 "${APACHE_HOME}/bin/rotatelogs" 를 이용하여 설정해주면 된다.


Apache의 설정파일이나 vhost 파일등을 열어 아래와 같이 지정하면 월별로 로그파일이 쌓이게 된다.


 TransferLog "|/usr/local/apache2/bin/rotatelogs /usr/local/apache2/logs/test.com-Transfer_log_%y%m 86400"