PHP로 구현한 웹 서비스 모니터링 프로그램
회사에서 필요로 해서 잠깐 시간을 내서 만들어 보았습니다.
전문적인 Server Monitoring System이 도입된다면 당연히 은퇴해야 하겠지만, 현재 그럭 저럭 잘 돌아 가고 있습니다.
필요로 하시는 분은 다운로드 받아서 마음대로 사용하셔도 됩니다.
라이센스는 없습니다. ^^ 대신 당근 책임도 없습니다.
제 인생에 최초로 공개하는 코드인데, 별볼일 없습니다.
Pear Package가 너무 잘되어 있네요.
기능은 간단합니다.
config.php에 설정되어 있는 url로 http Request를 보냅니다.
MAX_TRY 만큰 시도해서 HTTP Status Code가 200 OK 값을 받지 못하면
alert_SMS 함수를 호출 합니다. 여기에는 SMS 발송등의 기능을 구현하면 됩니다.
참고로 DNS 혹은 여러 네트워크 에러로 인해 접속이 불가하면 -100 을 보내고 ,
그 외는 HTTP Status Code 를 보냅니다.
1. Pear Package를 설치하셔야 합니다.
#> pear install HTTP_Client
#> pear install HTTP_Request
#> pear install Log
2. 아래 파일을 다운받고 , 특정 directory에 풀고
monitor.zip
3. config.php 파일을 여러분의 환경에 맞게 조정하시고
조정하실 것은 url 과 phone 정도라 생각됩니다.
4. alert_SMS 코드를 역시 여러분의 환경에 맞게 작성하시기 바랍니다.
SMS로 전송하시던지, 아님 메일로 보내시던지.. 등등의..
저희 회사는 SMS 서비스를 사용하고 있는 것이 있어서 DB table에만 넣으면 바로 전송이 되는데, 그렇치 않은 분들은 구현하기가 까다롭겠네요.
메일오면 SMS로 알림 메시지 보내는 서비스가 있던데, 그런 계정으로 메일을 보내도 될 것도 같군요.
5. 버그
오래 놔둘 수 록 메모리 점유율이 증가합니다.
이런 저런 테스트를 해보았는데, 아마도 Pear 패키지의 버그이거나 php 자체의 버그인 것으로 짐작됩니다.
사용에 유의하시기 바랍니다.
그럼 이만.