event_shipper reads log files and sends each line in logstash JSON format via encrypted UDP to redis.

LINKS

logstash is awesome and here:

http://logstash.net/

this uses a CA and public/private key architecture:

https://github.com/jordansissel/lumberjack

and finally, here’s woodchuck, which inspired this work:

https://github.com/danryan/woodchuck

SYNOPSIS

To run a local example installation, start redis. Then:

# Produce one log entry per second in the file 'test.log'
$ ./bin/producer 1

# Ship the log entries to localhost
$ ./bin/esshipper -c configs/test.yaml

# Receive entries and store in redis
$ ./bin/esproxy -c configs/proxy.yaml

STATUS

Stable in production for Ruby 1.9.3 and later.

PERFORMANCE

Good.

ENCRYPTION

Packets are encrypted using a simple AES256 symmetric encryption with a preshared user/password tuple on the server and the client. This should be good to keep people from reading your logs,

If someone with deep cryptographic knowledge wants to criticise my use of algorithms, please, you’re welcome! Just keep in mind that I’ve selected the current method to be simple to set up.

CONTRIBUTE

This gem is hosted on bitbucket at

https://bitbucket.org/kschiess/event_shipper

Please file any issue you might have with the program there. Contributions are welcome - you might shoot me an email before starting, just to check if the direction you take is welcome in the code base.

LICENSE

This piece of software is under a MIT license, which means you can do pretty much anything you want with it. Read the license, it’s in the LICENSE file.

© 2013 Kaspar Schiess, Technology Astronauts