monit-dev
[Top][All Lists]
Advanced

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

Re: [monit-dev] exec for service test


From: Jan-Henrik Haukeland
Subject: Re: [monit-dev] exec for service test
Date: Tue, 31 Aug 2010 23:12:00 +0200

Well, this has been on our TODO list for years. It's also up on our priority 
list at http://mmonit.com/monit/next/ It will require some changes to the Monit 
check machinery which is why this has been postponed for so long. The reason is 
that Monit poll each service and attributes in one thread and use non-blocking 
i/o and timeout to ensure forward progress. To check execution of a program or 
script it requires that Monit fork and execute the program, wait for x seconds 
in a separate thread to see if the program has returned or if an error has 
occurred in the program. Not rocket science at all, but some work. The thing 
is, Monit is ripe for some code refactoring and we want to wait with 
implementing this functionally until then. Unfortunately we never seem to find 
time starting on refactoring though I have hopes later this autumn. 


On 31. aug. 2010, at 18.13, Larry Brigman wrote:

> I have run across a case where the existing network tests don't work
> and would like to use exec as the test probe returning
> success or failure.
> 
> The case is a process that is an XML service processor but we don't
> know which port it will be on until it is configured.
> The request is sent as XML in the header and the response
> is sent back in the body.
> Since the XML response can have multiple possibilities of both success
> and failure depending on the deployment
> the send/expect doesn't work very well.
> 
> We already have some python scripts that provide a test of the port
> but we want to do an active monitor
> with start stop actions like monit.
> 
> What would be the easiest way to get exec "script" into the DSL?
> 
> BTW, I like the method of allowing a service without a pid file.  This
> service does not have one.



reply via email to

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