NAME

Proc::Safetynet - POE-based utility for supervising processes

SYNOPSIS

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();

DESCRIPTION

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 ALSO

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 etc.

Proc::Safetynet heavily borrows concepts and implementation details from the Supervisord project - http://supervisord.org

AUTHOR

Dexter Tad-y, <dexterbt1@yahoo.com>

COPYRIGHT AND LICENSE

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.