NAME

XAS::Monitor::Database - A Perl extension for the XAS environment

SYNOPSIS

use XAS::Monitor::Database

my $monitor = XAS::Monitor::Database->new(
    -alias     => 'monitor',
    -logger    => 'logger',
    -schedule  => '*/1 * * * *',
);

DESCRIPTION

This module inherits from XAS::Monitor::Base and provides a base class for monitors that monitor items within a databae.

METHODS

new

This method initializes the module and take these three parameters:

-alias

The name of this session.

-logger

The alias for the logger session.

-schedule

The schedule to follow when monitoring. It defaults to: "*/1 * * * *". Which is do something once a minute.

initialize

This method declares the event "monitor" and opens the connection to the database.

cleanup

This method stops the "monitor" processing and closes the database connection.

PUBLIC EVENTS

startup

This event schedules the processing of "monitor" with the supplied schedule.

shutdown

This is triggered by a "shutdown" event and calls the cleanup() method.

monitor

This event does the actual monitoring. By default it does nothing and needs to be overridden. It takes two parameters: $kernel, $self.

SEE ALSO

XAS::Base
XAS::Class
XAS::Constants
XAS::Exception
XAS::System
XAS::Utils

XAS::Apps::Base::Alerts
XAS::Apps::Base::Collector
XAS::Apps::Base::ExtractData
XAS::Apps::Base::ExtractGlobals
XAS::Apps::Base::RemoveData
XAS::Apps::Database::Schema
XAS::Apps::Templates::Daemon
XAS::Apps::Templates::Generic
XAS::Apps::Test::Echo::Client
XAS::Apps::Test::Echo::Server
XAS::Apps::Test::RPC::Client
XAS::Apps::Test::RPC::Methods
XAS::Apps::Test::RPC::Server

XAS::Collector::Alert
XAS::Collector::Base
XAS::Collector::Connector
XAS::Collector::Factory

XAS::Lib::App
XAS::Lib::App::Daemon
XAS::Lib::App::Daemon::POE
XAS::Lib::Connector
XAS::Lib::Counter
XAS::Lib::Daemon::Logger
XAS::Lib::Daemon::Logging
XAS::Lib::Gearman::Admin
XAS::Lib::Gearman::Admin::Status
XAS::Lib::Gearman::Admin::Worker
XAS::Lib::Gearman::Client
XAS::Lib::Gearman::Client::Status
XAS::Lib::Gearman::Worker
XAS::Lib::Net::Client
XAS::LIb::Net::Server
XAS::Lib::RPC::JSON::Client
XAS::Lib::RPC::JSON::Server
XAS::Lib::Session
XAS::Lib::Spool

XAS::Model::Database
XAS::Model::Database::Alert
XAS::Model::Database::Counter
XAS::Model::DBM

XAS::Monitor::Base
XAS::Monitor::Database
XAS::Monitor::Database::Alert

XAS::Scheduler::Base

XAS::System::Alert
XAS::System::Email
XAS::System::Environment
XAS::System::Logger

AUTHOR

Kevin Esteb, <kevin@kesteb.us>

COPYRIGHT AND LICENSE

Copyright (C) 2009 by Kevin L. Esteb

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.