회사에서 서버 모니터링을 위해 MRTG를 사용하고 있습니다. 개발하는 입장에서 실시간으로 서버트래픽을 확인하고 싶을때가 많이 있는데, 이럴때 아주 훌륭하더군요.

커스터마이즈하기도 그다지 복잡하지 않아서, 저같은 경우는 위에서 보시듯이 분당 쿼리수(Query per minute)를 출력해주는 스크립트 하나 짠 뒤에 MRTG와 붙여서 DB서버의 부하를 측정하는 용도로 사용하고 있습니다.
지금까지는 apache + php가 올라가있는 서버에서 돌리고 있었는데, 몇몇 프로그램에서 .html도 PHP로 인식하도록 handler 설정을 변경하게 될 일이 생겼는데요, 하필이면 그때부터 MRTG가 PHP 파싱 에러를 내더군요!!
왜 이런 에러가 나는지 봤더니 MRTG가 만들어낸 html 아웃풋 앞쪽에 다음과 같은 XML 헤더가 붙어있더군요.
이놈의 헤더가 <? ~ ?> 안쪽에 있는 xml 헤더를 php 스크립트인것처럼 인식하게 만든거죠.
해당 부분을 주석처리하려고 mrtg 소스 디렉토리에서 *.c와 *.h를 대상으로 'xml'을 검색해보니.. 세상에 아무것도 안나오더군요.
혹시나 해서 mrtg 실행파일을 직접 vi로 열어보니... 털썩... PERL 스크립트였다는...
역시나 텍스트기반의 데이터 처리에는 PERL을 따라갈 자가 없는 것인가봅니다.
ps. xml 헤더 출력부분은 #으로 주석처리해서 끝~
커스터마이즈하기도 그다지 복잡하지 않아서, 저같은 경우는 위에서 보시듯이 분당 쿼리수(Query per minute)를 출력해주는 스크립트 하나 짠 뒤에 MRTG와 붙여서 DB서버의 부하를 측정하는 용도로 사용하고 있습니다.
지금까지는 apache + php가 올라가있는 서버에서 돌리고 있었는데, 몇몇 프로그램에서 .html도 PHP로 인식하도록 handler 설정을 변경하게 될 일이 생겼는데요, 하필이면 그때부터 MRTG가 PHP 파싱 에러를 내더군요!!
왜 이런 에러가 나는지 봤더니 MRTG가 만들어낸 html 아웃풋 앞쪽에 다음과 같은 XML 헤더가 붙어있더군요.
<?xml version="1.0" encoding="iso-8859-1" ?>
이놈의 헤더가 <? ~ ?> 안쪽에 있는 xml 헤더를 php 스크립트인것처럼 인식하게 만든거죠.
해당 부분을 주석처리하려고 mrtg 소스 디렉토리에서 *.c와 *.h를 대상으로 'xml'을 검색해보니.. 세상에 아무것도 안나오더군요.
혹시나 해서 mrtg 실행파일을 직접 vi로 열어보니... 털썩... PERL 스크립트였다는...
역시나 텍스트기반의 데이터 처리에는 PERL을 따라갈 자가 없는 것인가봅니다.
ps. xml 헤더 출력부분은 #으로 주석처리해서 끝~
'소프트웨어 개발' 카테고리의 다른 글
웹애플리케이션 개발자에게 필수적인 DNS cache 컨트롤 (0) | 2006.08.25 |
---|---|
UML 창시자 이바 야콥슨의 한마디에 대해 (0) | 2006.08.24 |
털썩.. mrtg가 PERL 스크립트였구나.. (1) | 2006.08.21 |
JCO에서 '소프트웨어개발자 대토론회' 한다네요 (0) | 2006.08.16 |
Jakarta Commons Digester 괜찮네요 (1) | 2006.08.15 |
Eclipse에서 다국어 .properties를 손쉽게 편집하려면 (2) | 2006.08.15 |