NAME
POE::Component::Server::eris - POE eris message dispatcher
VERSION
version 2.5
SYNOPSIS
POE session for integration with your central logging infrastructure By itself, this module is useless. It is designed to take an stream of data from anything that can generate a POE Event. Examples for syslog-ng and rsyslog are included in the examples directory!
use POE qw(
Component::Server::TCP
Component::Server::eris
);
# Message Dispatch Service
my $SESSION = POE::Component::Server::eris->spawn(
Alias => 'eris_dispatch', #optional
ListenAddress => 'localhost', #default
ListenPort => '9514', #default
GraphiteHost => undef, #default
GraphitePort => 2003, #default
GraphitePrefix => 'eris.dispatcher', #default
);
# $SESSION = { alias => 'eris_dispatch', ID => POE::Session->ID };
# Take Input from a TCP Socket
my $input_log_session_id = POE::Component::Server::TCP->spawn(
# An event will post incoming messages to:
# $poe_kernel->post( eris_dispatch => dispatch_message => $msg );
# or
# $poe_kernel->post( $SESSION->{alias} => dispatch_message => $msg );
...
);
POE::Kernel->run();
METHODS
spawn
Creates the POE::Session for the eris correlator.
Parameters: ListenAddress => 'localhost', #default ListenPort => '9514', #default
ACKNOWLEDGEMENTS
AUTHOR
Brad Lhotsky <brad@divsionbyzero.net>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2017 by Brad Lhotsky.
This is free software, licensed under:
The (three-clause) BSD License
EVENTS
debug
Controls Debugging Output to the controlling terminal
dispatcher_start
Sets the alias and creates in-memory storages
graphite_connect
Establish a connection to the graphite server
flush_stats
Send statistics to the graphite server and the debug clients
dispatch_message
Based on clients connected and their feed settings, distribute this message
dispatch_messages
Splits multiple messages by line feeds into many messages.
server_error
Handles errors related to the PoCo::TCP::Server
register_client
Client Registration for the dispatcher
debug_client
Enables debugging for the client requesting it
nobug_client
Disables debugging for a particular client
fullfeed_client
Adds requesting client to the list of full feed clients
nofullfeed_client
Disables the full feed from the requesting client.
subscribe_client
Handle program name subscription
unsubscribe_client
Handle unsubscribe requests from clients
match_client
Handle requests for string matching from clients
flush_client
Flushes the outstanding buffer to the client.
nomatch_client
Remove a match based feed from a client
regex_client
Handle requests for string regexes from clients
noregex_client
Remove a match based feed from a client
status_client
Send current server statistics to client
dump_client
Dump something interesting to the client
hangup_client
This handles cleaning up from a client disconnect
server_shutdown
Announce server shutdown, shut off PoCo::Server::TCP Session
client_connect
PoCo::Server::TCP Client Establishment Code
client_print
PoCo::Server::TCP Write to Client
broadcast
PoCo::Server::TCP Broadcast Messages
debug_message
Send debug message to DEBUG clients
client_input
Parse the Client Input for eris::dispatcher commands and enact those commands
help_client
Display the help message
client_term
PoCo::Server::TCP Client Termination
SUPPORT
Websites
The following websites have more information about this module, and may be of help to you. As always, in addition to those websites please use your favorite search engine to discover more resources.
MetaCPAN
A modern, open-source CPAN search engine, useful to view POD in HTML format.
RT: CPAN's Bug Tracker
The RT ( Request Tracker ) website is the default bug/issue tracking system for CPAN.
https://rt.cpan.org/Public/Dist/Display.html?Name=POE-Component-Server-eris
Source Code
This module's source code is available by visiting: https://github.com/reyjrar/POE-Component-Server-eris