Hi, in a logs i have always:
[PST Nov 6 03:53:13] debug : 'nginx' zombie check succeeded [status_flag=0000] [PST Nov 6 03:53:13] debug : 'nginx' succeeded connecting to INET[ www.mysite.org:80] via TCP [PST Nov 6 03:53:13] debug : 'nginx' succeeded testing protocol [HTTP] at INET[www.mysite.org:80] via TCP [PST Nov 6 03:53:13] debug : 'webserverresponse' status check succeeded is always succeded the status of webserverresponse. My configuration are ok? Thanks 2012/11/6 Martin Pala <[email protected]> > Hi, > > can you run monit in debug mode ("-v" option) and check the logs? > > Regards, > Martin > > > On Nov 5, 2012, at 6:09 PM, Houssan A. Hijazi <[email protected]> > wrote: > > Hi, > > my config file: > > check process nginx > with pidfile /dh/nginx/servers/httpd-ps93737/var/logs/nginx.pid #Pid > file for nginx in my case it located in /opt/nginx/logs/ > start program = "/etc/init.d/nginx start" > stop program = "/etc/init.d/nginx stop" > if failed host www.mysite.com 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 status == 502 then restart > if status == 502 then exec "/usr/local/bin/monit restart nginx" > depends on nginx > > My /home/myhome/webserver_response.sh return 502, but not work, not > restart nginx. > > I did something wrong? > > thanks > > 2012/11/2 Martin Pala <[email protected]> > >> You can keep the "depends on nginx" as well (if the parent nginx service >> will be restarted, it will suppress the child service test during the >> restart). >> >> >> On Nov 2, 2012, at 10:16 PM, "Houssan A. Hijazi" <[email protected]> >> wrote: >> >> Hi, >> >> thanks for your hint. >> >> i don't need put: depends on nginx ? >> >> Thanks >> >> >> >> 2012/11/2 Martin Pala <[email protected]> >> >>> I'm sorry i provided wrong hint - the child service restart action >>> doesn't trigger the parent's service restart (the action cascades from >>> parents to children but bot vice versa). >>> >>> The correct way to restart the nginx and prevent th race condition >>> between the two checks is: >>> >>> check program webserverresponse with path >>> /home/myhome/webserver_response.sh >>> if status == 502 then exec "/usr/bin/monit restart nginx" >>> >>> Regards, >>> Martin >>> >>> >>> >>> On Nov 1, 2012, at 6:19 PM, "Houssan A. Hijazi" <[email protected]> >>> wrote: >>> >>> Hi, >>> >>> this rule is not work: >>> >>> check program webserverresponse with path >>> /home/myhome/webserver_response.sh >>> if status == 502 then restart >>> depends on nginx >>> >>> if i run /home/myhome/webserver_response.sh in terminal it print 502 but >>> the monit not restart. >>> >>> Can you help me? >>> >>> thanks >>> >>> 2012/11/1 Houssan A. Hijazi <[email protected]> >>> >>>> 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 >>>> >>> >>> >>> >>> -- >>> -- >>> *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 >> >> >> >> -- >> 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
