hi all... well, this isn't a new module quite yet... I've been toying with the idea of a module that does automatic server monitoring. I know there must be programs out there that do this, and the guide has some examples, but I was interested in creating a module add-in that would take care of things with minimal intervention (as in PerlModule Apache::Ping and that's all)... I'm not really a systems person, so I don't get all the intricicies of forking, daemons, and the like, but here's a skeleton that seems to work... Does anyone think this is a worthy endeavor? Are there some inherent dangers here that should mentioned? --Geoff package Apache::Ping; use 5.004; use mod_perl 1.23; use LWP::UserAgent; use strict; $SIG{CHLD} = 'IGNORE'; my $warmup = 10; my $wait = 10; my $restart = "/usr/local/apache/apachectl restart"; my $url = "http://localhost/perl-status"; defined (my $kid = fork) or die "Cannot fork: $!\n"; unless ($kid) { close STDIN; close STDOUT; close STDERR; open STDIN, '/dev/null' || die "Can't read /dev/null: $!"; open STDOUT, '>/dev/null' || die "Can't write to /dev/null: $!"; open STDERR, '>/dev/null' || die "Can't write to /dev/null: $!"; sleep($warmup); while(1) { my $ua = new LWP::UserAgent; my $req = new HTTP::Request (GET => $url); my $res = $ua->request($req); if ($res->is_success) { sleep($wait); } else { system($restart); CORE::exit(0); } } close FH; CORE::exit(0); } 1;