| Watchdog documentation | Contained in the Watchdog distribution. |
Watchdog::HTTP - Test status of HTTP service
use Watchdog::HTTP; $h = new Watchdog::HTTP($name,$host,$port,$file); print $h->id, $h->is_alive ? ' is alive' : ' is dead', "\n";
Watchdog::HTTP is an extension for monitoring an HTTP server.
Returns a new Watchdog::HTTP object. $name is a string which will identify the service to a human (default is 'httpd'). $host is the hostname which is running the service (default is 'localhost'). $port is the port on which the service listens (default is 80).
Returns true if an HTTP GET method succeeds for the URL http://$host:$port/$file or false if it doesn't.
new Maintainer: Clemens Gesell <clemens.gesell@vegatron.org>
Paul Sharpe <paul@miraclefish.com>
Copyright (c) 1998 Paul Sharpe. England. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
| Watchdog documentation | Contained in the Watchdog distribution. |
package Watchdog::HTTP; use strict; use Alias; use base qw(Watchdog::Base); use HTTP::Request; use LWP::UserAgent; use vars qw($VERSION $HOST $PORT $FILE); $VERSION = '0.02';
my($name,$port,$file) = ('httpd',80,'');
sub new($$$) { my $proto = shift; my $class = ref($proto) || $proto; $_[0] = $name unless defined($_[0]); $_[2] = $port unless defined($_[2]); my $self = bless($class->SUPER::new(@_),$class); return $self; } #------------------------------------------------------------------------------
sub is_alive() { my $self = attr shift; my $request = new HTTP::Request(GET => "http://$HOST:$PORT/$FILE"); my $ua = new LWP::UserAgent; my $response = $ua->request($request); return $response->is_success ? 1 : 0; } #------------------------------------------------------------------------------