Hi, the "check program" was added in Monit 5.3 ... you need to upgrade monit.
Regards, Martin On Nov 1, 2012, at 2:59 PM, "Houssan A. Hijazi" <[email protected]> wrote: > Hi, > > i created the file like this: > > #!/bin/bash > curl -o /dev/null --silent --head --write-out '%{http_code}\n' > http://www.mysite.org > > it return the http response code. > > in monit configuration i do: > > check process nginx > with pidfile /dh/nginx/servers/httpd-myserver/var/logs/nginx.pid > start 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 nginx > if 5 restarts with 5 cycles then alert > check program webserverresponse with path /home/myhome/webserver_response.sh > if content == "502" then restart > depends on nginx > > When i try start monit: > > $ sudo /etc/init.d/monit start > Starting daemon monitor: Syntax error: > /etc/monit/conf.d/nginx.conf:7: Error: syntax error 'webserverresponse' > > Monit version: 1:5.1.1-1 > > thanks > > > 2012/10/31 Martin Pala <[email protected]> > 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 <[email protected]> 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 > > > > -- > -- > Houssan A. Hijazi > Analista de Sistemas > www.lojasnoparaguai.com.br / www.libanovivo.org > -- > To unsubscribe: > https://lists.nongnu.org/mailman/listinfo/monit-general
-- To unsubscribe: https://lists.nongnu.org/mailman/listinfo/monit-general
