Thanks, Martin 2012/11/1 Martin Pala <[email protected]>
> 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 > -- -- *Houssan A. Hijazi * Analista de Sistemas www.lojasnoparaguai.com.br / www.libanovivo.org
-- To unsubscribe: https://lists.nongnu.org/mailman/listinfo/monit-general
