Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Clone this wiki locally
Welcome to the Gelfino wiki
Gelfino is a tiny embeddable Gelf server written in pure Clojure, Gelfino enables real time processing of log events through streams either standalone or as a forwarding target from Graylog2.
Streams are defined using a Clojure DSL, a stream is curved out from the global message streams by defining selectors or embedded Drools fusion rules DSL.
Some use cases:
- Forwarding events into fnordmetric for generating graphs on specific events.
- Detecting events like server restarts, errors etc, and firing alerts.
- As a standalone server pipping events into a durable store.
- Statistics gathering, using storm and/or incanter.
Gelfino is meant to be used as library within a Clojure project, we use a DSL to define our streams and actions.
- Defining selectors is the simplest form of creating streams and applying actions on them.
- The embedded Drools rule DSL enables complex event processing queries (cep) who's results can be binded to any callback function.
Gelfino logs a couple of statistics into statistics.log file, these are updated every 5sec and include:
- Total messages received.
- Total messages processed.
- Processing rate (the difference between every 5sec).
Installation and quick start
- Integrating gelfino and storm.
- Use core logic in order to create facts and query them.
- Step out of the GELF spec and use snappy, see how much faster it is.
- Write a client side GELF sender, both for benchmarking and implementing chunking correctly (some existing libraries dont).
- Add syslog support.
Copyright (C) 2012 narkisr.com