Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Perl
tag: 0.001

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib/Log/Stash
t
.gitignore
Changes
MANIFEST.SKIP
Makefile.PL
README

README

NAME
    Log::Stash::ZeroMQ - input and output logstash messages to ZeroMQ.

SYNOPSIS
        # Terminal 1:
        $ logstash --input STDIN --output ZeroMQ --output_options '{"connect":"tcp://127.0.0.1:5558"}'
        {"data":{"some":"data"},"@metadata":"value"}

        # Terminal 2:
        $ logstash --output STDOUT --input ZeroMQ --input_options '{"socket_bind":"tcp://*:5558"}'
        {"data":{"some":"data"},"@metadata":"value"}

DESCRIPTION
    A ZeroMQ transport for Log::Stash.

    Designed for use as a log transport and aggregation mechanism for perl
    applications, allowing you to aggregate structured and non-structured
    log messages across the network in a non-blocking manor.

    Clients (I.e. users of the Log::Stash::Output::ZeroMQ class) connect to
    a server (I.e. a user of the Log::Stash::Input::ZeroMQ class) via
    ZeroMQ's pub/sub sockets. These are setup to be lossy and non-blocking,
    meaning that if the log-receiver process is down or slow, then the
    application will queue a small (and configurable) amount of logs on it's
    side, and after that log messages will be dropped.

    Whilst throwing away log messages isn't a good thing to do, or something
    that you want to happen regularly, in many (especially web application)
    contexts, network logging being a single point of failure is not
    acceptable from a reliability and graceful degradation standpoint.

    The application grinding to a halt as a non-essential centralised
    resource is unavailable (e.g. the log aggregation server) is
    significantly less acceptable than the loss of non-essential logging
    data.

HOW TO USE
    In your application emitting messages, you can either use
    Log::Stash::Output::ZeroMQ directly, of you can use it via
    Log::Dispatch::Log::Stash.

        # FIXME - Example code, including overriding IP to connect to here

    On your log aggregation server, just run the logstash utility:

        # FIXME - Example command line here

SEE ALSO
    Log::Stash::Output::ZeroMQ
    Log::Stash::Input::ZeroMQ
    Log::Stash
    ZeroMQ
    <http://www.zeromq.org/>

AUTHOR
    Tomas (t0m) Doran <bobtfish@bobtfish.net>

SPONSORSHIP
    This module exists due to the wonderful people at Suretec Systems Ltd.
    <http://www.suretecsystems.com/> who sponsored it's development for its
    VoIP division called SureVoIP <http://www.surevoip.co.uk/> for use with
    the SureVoIP API -
    <http://www.surevoip.co.uk/support/wiki/api_documentation>

COPYRIGHT
    Copyright Suretec Systems 2012.

LICENSE
    GNU Affero General Public License, Version 3

    If you feel this is too restrictive to be able to use this software,
    please talk to us as we'd be willing to consider re-licensing under less
    restrictive terms.

Something went wrong with that request. Please try again.