PATCH: Real code application of daevel
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
daevel |
New
|
Undecided
|
Unassigned |
Bug Description
From: Kevin Paradine, Knowledge Management Operations, US Army
Hiya Dan:
I wanted to stick to your initial configuration system without doing anything that would break it - "do no harm" as it were. That said, taking the lockfile name would be much easier on the end user. ;-)
That said, an application of Daevel follows. I'm stuck using a mandated notification system which the only thing I can trust it to do is to check if a TCP port is up. It tries to do other things, but not reliably, and has no capability to check content on HTTPS. Hence, Daevel to the rescue. I use it in a script that uses Curl to check whether an HTTPS site which is using a remote login agent (Netegrity) is up or not. The only way to be sure is to actually log into the site and check the response. Netegrity has this annoying habit of displaying a 500 error on the browser when it can't reach its policy (authentication) boxes, which are located over a leased line, so the unavailability is more than just the rare electrical outage or whatever. So I run these scripts in a cron job once a minute. Daevel goes up and down in response to the ability to log into the target site, and the notification program watches Daevel (from another box).
I have many sites to watch - so I create a dir for each, and logs, pidfiles, and other associated stuff are all contained within.
If it sounds convoluted - yes, it is. Script follows. It's not much, but anyone is welcome to use.