Proc::Safetynet - POE-based utility for supervising processes
use Proc::Safetynet; use Proc::Safetynet::Program::Storage::TextFile; # load programs my $programs = Proc::Safetynet::Program::Storage::TextFile->new( file => "/etc/my.programs", ); $programs->reload; # start supervisor my $supervisor = Proc::Safetynet::Supervisor->spawn( binpath => "/bin:/usr/bin", programs => $programs, ); POE::Kernel->run();
Proc::Safetynet is a utility framework for building programs that supervises or "babysits" other processes. Supervision tasks can include process management (start / stop) and program provisioning (add / remove applications).
Proc::Safetynet is especially useful for monitoring and auto-restarting long-running server programs (e.g. FastCGI scripts).
See the accompanying
bin/safetynetd.pl script as part of the Proc::Safetynet distribution for the actual supervisor daemon. The distribution also includes sample configuration files under
Proc::Safetynet heavily borrows concepts and implementation details from the Supervisord project - http://supervisord.org
Dexter Tad-y, <email@example.com>
Copyright (C) 2008 by Dexter Tad-y
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.