monit-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [monit] Start/Stop Program Calls in Monitrc


From: bggy
Subject: Re: [monit] Start/Stop Program Calls in Monitrc
Date: Tue, 12 Jan 2010 10:30:52 -0800 (PST)

Thanks for the tip!  It seems that the other issue I'm having with the
workling and ultrasphinx start calls is related to Monit resetting
environment variables. When starting ultrasphinx I get the following error
message:

couldn't find HOME environment -- expanding `~'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.8.4/lib/rake.rb:2390:in
`expand_path'

Is there a way to run monit without it clearing env variables and resetting
$PATH?

Thank you!,
John
 

Martin Pala wrote:
> 
> On Mon, Jan 11, 2010 at 07:32:40PM -0800, bggy wrote:
>> 
>> Hi, I am switching to Monit from God because God leaks badly (haven't
>> checked
>> out their new release which supposedly fixes much of the leaking). To
>> test
>> out Monit I am setting it up on my dev machine (Mac OS X).
>> 
>> God can be configured with calls such as:
>> 
>> start = "starling -d -P #{RAILS_ROOT}/log/starling.pid -q
>> #{RAILS_ROOT}/log/
>> -p 22122"
>> stop = "kill `cat #{RAILS_ROOT}/log/starling.pid`"
>> 
>> With Monit, I'm configuring monitrc with the following to start starling:
>> 
>> with pidfile /full/app/directory/log/starling.pid
>> start program = "/usr/local/bin/starling -d -P
>> /full/app/directory/log/starling.pid -q /full/app/directory/log/ -p
>> 22122"
>> 
>> This works and starling starts up. But, the following call to stop
>> starling
>> doesn't work:
>> 
>> stop program = "/bin/kill `/bin/cat
>> /full/app/directory/log/starling.pid`"
>> 
>> Is there a way to make system calls like the above in the monitrc file?
> 
> 
> Yes, but since Monit does exec() on the program line, if you want to use
> shell
> command line you need to wrap it in shell like this:
> 
>   stop program = "/bin/bash -c '/bin/kill `/bin/cat
> /full/app/directory/log/starling.pid`'"
> 
> 
> 
>> I am also unable to start workling with the following:
>> 
>> start program = "/full/app/directory/script/workling_client start"
>> stop program = "/full/app/directory/script/workling_client stop"
>> 
>> My configuration to start ultrasphinx also does not work:
>> 
>> start program = "/usr/bin/cd /full/app/directory/ && /usr/local/bin/rake
>> ultrasphinx:daemon:start"
>> stop program = "/usr/bin/cd /full/app/directory/ && /usr/local/bin/rake
>> ultrasphinx:daemon:stop"
> 
> 
> Same issue - you need to wrap it in shell to get interpret shell command
> line:
> 
>   start program = "/bin/bash -c '/usr/bin/cd /full/app/directory/ &&
> /usr/local/bin/rake ultrasphinx:daemon:start'"
> 
> 
> Regards,
> Martin
> 
> 
> 
> --
> To unsubscribe:
> http://lists.nongnu.org/mailman/listinfo/monit-general
> 
> 

-- 
View this message in context: 
http://old.nabble.com/Start-Stop-Program-Calls-in-Monitrc-tp27122007p27131347.html
Sent from the monit-general mailing list archive at Nabble.com.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]