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