[Zope-dev] zopectl (was: 2.2.0a1 Problems)

Pavlos Christoforou pavlos@gaaros.com
Tue, 23 May 2000 13:33:59 -0400 (EDT)


On Tue, 23 May 2000, Brian Lloyd wrote:
> 
> Well, no one here is actively working on it right now - we just know 
> we want it to happen :^) If you have something working, that would 
> seem to be a good baseline to build on and start discussing what 
> the zopectl script should do. I'd really like the zopistas to take 
> the lead on this - I've started a discussion and contributed some
> basic requirements at:
> 
> http://www.zope.org/Products/Zope/Wiki/zopectl
> 
> 

DJB (author of Qmail) has a set of supervising programs to start stop and
monitor subprocesses. I have written a similar product in pure python
(based on some of his ideas). It can basically start stop restart and
monitor any number of subprocesses.

this is a typical usage example from our site:

[root@mail ZopeLab]# ./tellzope status 
+OK <list>
------------------------------------------------------------------------
                            Zsupervisor Info
------------------------------------------------------------------------
UID:  root 
PID:  3626 
PGRP:  3626 
Started:  23/May/2000:13:48:40
 
Zsupervised process:  /linux2/ZopeLab/start 
Started:  23/May/2000:17:48:32 with PID 9894 PGRP 3626

kill 9894

(log file reports)

WARNING [23/May/2000:18:30:50 ] "Zsupervisor" Process
/linux2/ZopeLab/start with
 pid 16636 pgrp 16608 died - signal 15 
INFO [23/May/2000:18:30:50 ]"Zsupervisor" Forked a child
INFO [23/May/2000:18:30:50 ] "Zsupervisor" Process /linux2/ZopeLab/start 
started with pid 16716 pgrp 16608


./tellzope stop

+OK <All processes killed and removed from supervision>


We have been using for over a year and it seems ok. But it needs named
pipes support for communication between supervisor and control client. If
you want I can place the code on my Members folder. I did announce it a
year ago but I placed it on starship so it is not available anymore.


Pavlos