|
From: | Houssan A. Hijazi |
Subject: | Re: Monit http error status |
Date: | Thu, 1 Nov 2012 12:05:08 -0200 |
Hi,the "check program" was added in Monit 5.3 ... you need to upgrade monit.Regards,MartinOn Nov 1, 2012, at 2:59 PM, "Houssan A. Hijazi" <address@hidden> wrote:Hi,i created the file like this:--#!/bin/bashcurl -o /dev/null --silent --head --write-out '%{http_code}\n' http://www.mysite.orgit return the http response code.in monit configuration i do:check process nginxwith pidfile /dh/nginx/servers/httpd-myserver/var/logs/nginx.pidstart program = "/etc/init.d/nginx start"stop program = "/etc/init.d/nginx stop"if failed host www.mysite.org port 80 protocol HTTP then restart #set your server IP that runs nginxif 5 restarts with 5 cycles then alertcheck program webserverresponse with path /home/myhome/webserver_response.shif content == "502" then restartdepends on nginxWhen i try start monit:$ sudo /etc/init.d/monit startStarting daemon monitor: Syntax error:/etc/monit/conf.d/nginx.conf:7: Error: syntax error 'webserverresponse'Monit version: 1:5.1.1-1thanks2012/10/31 Martin Pala <address@hidden>
Hi,
the default HTTP protocol test returns just failure if the HTTP code is error.
You can use the "check program" test with custom script and use curl/wget to get the http response code, for example (not tested):
/usr/local/bin/myhttptest.sh:
--8<--
#!/bin/bash
exit `curl -sL -w "%{http_code}\\n" "http://mymachine" -o /dev/null`
--8<--
and then connect it to Monit like this:
--8<--
check process apache with pidfile /var/run/apache.pid
start program = ...
stop program = ...
check program myhttptest with path /usr/local/bin/myhttptest.sh
if status == 502 then restart
depends on apache
--8<--
Another option is to use the generic send/expect test to write simple HTTP check and test the 502 response - generic example from the monit manual:
--8<--
if failed host cave.persia.ir port 4040
send "Open, Sesame!\r\n"
expect "Please enter the cave\r\n"
send "Shut, Sesame!\r\n"
expect "See you later [A-Za-z ]+\r\n"
then restart
--8<--
Regards,
Martin
> --
On Oct 30, 2012, at 1:57 PM, Houssan A. Hijazi <address@hidden> wrote:
> Hi,
>
> i am on dreamhost using nginx with fastcgi, i need use monit to monitoring the nginx error, if error is 502 so restart.
>
> in my monit.log i have:
>
> HTTP error: Server returned status 502
>
> How i can see if host returned 502 error ?
>
> Thanks
>
> To unsubscribe:
> https://lists.nongnu.org/mailman/listinfo/monit-general
--
To unsubscribe:
https://lists.nongnu.org/mailman/listinfo/monit-general
--www.lojasnoparaguai.com.br / www.libanovivo.org--Houssan A. HijaziAnalista de Sistemas
To unsubscribe:
https://lists.nongnu.org/mailman/listinfo/monit-general
--
To unsubscribe:
https://lists.nongnu.org/mailman/listinfo/monit-general
--
Houssan A. Hijazi
Analista de Sistemas
[Prev in Thread] | Current Thread | [Next in Thread] |