NAME

XAS::Collector::Factory - A factory method to load collector processors

SYNOPSIS

This module is used to create multiple collectors from a configuration file.

my $collectors = XAS::Collector::Factory->load(
   -connector => 'connector',
   -logger    => 'logger',
   -configs   => 'collectors.ini'
);

DESCRIPTION

This module will take a configuration file and starts all the collectors defined within.

Configuration File

The configuraton file has the following cavets:

o Item names are case sensitve.
o A ";" indicates the start of a comment.
o The section header must be unique and start with "collector:".

The file format follows the familiar Win32 .ini format.

; My configuration file
;
[collector: alert]
alias = alert
queue = /queue/alert
packet-type = xas-alert
module = XAS::Collector::Alert

Configuration Items

alias

The alias for the POE Session.

packet-type

The XAS packet type. Defaults to 'unknown'.

module

The module to load to handle this packet type.

queue

The queue to listen on for packets.

METHODS

load

This loads the configuration file and starts the collectors.

ACCESSORS

collectors

Returns a list of collectors.

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 L. Esteb, <kevin@kesteb.us>

COPYRIGHT AND LICENSE

Copyright (C) 2012 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.5 or, at your option, any later version of Perl 5 you may have available.