Load Balancing 서버를 구성한 경우 Monitoring Tool에서 각 노드의 서비스 확인을 위해서 지속적으로 접속을 수행하게 된다.
이러한 경우 각 노드에서의 Apache 설정에 로그를 보면, 서비스 확인을 위한 접속까지 모두 로그에 남게 된다. 사실 불필요하고, 용량만 차지하는 로그이므로 로그를 남기지 않는 방법을 사용하는 것이 좋다.
이러한 경우 Apache의 SetEnvIf 옵션을 사용하여 로그를 남기지 않을 수 있다.
예를 들면, Control Node의 IP가 10.0.0.1이고, Apache 서비스가 동작하는 Node의 도메인이 s1.bongbong.net이라면,
로 설정하면, 클라이언트 10.0.0.1에서 접속하는 경우는 로그 파일에 기록하지 않도록 설정할 수 있다.
SetEnvIf에는 Remote_Addr외에도 Request_URI, Request_Method 등의 여러 변수를 사용할 수 있으며, 사용 가능한 변수는 Apache HTTP 매뉴얼 페이지를 참조하라.
이러한 경우 각 노드에서의 Apache 설정에 로그를 보면, 서비스 확인을 위한 접속까지 모두 로그에 남게 된다. 사실 불필요하고, 용량만 차지하는 로그이므로 로그를 남기지 않는 방법을 사용하는 것이 좋다.
이러한 경우 Apache의 SetEnvIf 옵션을 사용하여 로그를 남기지 않을 수 있다.
SetEnvIf Remote_Addr "IP Address의 정규식 표현" except={name}
CustomLog "logs/domain-access" common env=!except
CustomLog "logs/domain-access" common env=!except
예를 들면, Control Node의 IP가 10.0.0.1이고, Apache 서비스가 동작하는 Node의 도메인이 s1.bongbong.net이라면,
SetEnvIf Remote_Addr "^10\.0\.0\.1$" except=checkalive
CustomLog "logs/s1.bongbong.net-access" common env=!except
CustomLog "logs/s1.bongbong.net-access" common env=!except
로 설정하면, 클라이언트 10.0.0.1에서 접속하는 경우는 로그 파일에 기록하지 않도록 설정할 수 있다.
SetEnvIf에는 Remote_Addr외에도 Request_URI, Request_Method 등의 여러 변수를 사용할 수 있으며, 사용 가능한 변수는 Apache HTTP 매뉴얼 페이지를 참조하라.
'작업 > Web' 카테고리의 다른 글
패킷 전송을 방해하는 원인을 찾은듯 (0) | 2009.07.21 |
---|---|
Apache + Tomcat + mod_jk 연동시 flush 문제 (0) | 2009.06.12 |
쿠키(cookie) 쓰기 (0) | 2008.11.10 |
Apache Tomcat에서의 기본 application directory 변경 (1) | 2008.08.20 |