[syslog-ng] [ANN]: balabit.logstore - Open Source LogStore reader API

Vámos Balázs vamos.balazs at zuriel.hu
Fri May 4 17:17:59 CEST 2012


Hi,

Is there any roadmap of the Java API?

Balazs


On 04/30/2012 01:19 PM, Gergely Nagy wrote:
> ---------------------------------------------------------------
> PACKAGE   : com.balabit/logstore
> VERSION   : 0.0.1
> SUMMARY   : First alpha release
> DATE      : 2012 April 24
> HOMEPAGE  : http://algernon.github.com/balabit.logstore
> ---------------------------------------------------------------
>
> DESCRIPTION:
>
>   The balabit.logstore project is a library written in Clojure, that
>   tries to provide a convenient API to read syslog-ng PE LogStore files.
>
>   The reason behind the implementation is to have an independent, open
>   source reader for the LogStore file format, so that one is not tied to
>   syslog-ng to read one's logs stored in this format. An open
>   implementation makes it possible to read these logs on systems where
>   syslog-ng is not installed, or where the lgstool program is not
>   available.
>
>   LogStore itself is a storage format for log messages, supporting
>   encryption, compression, secure timestamps, serialized messages (think
>   name-value pairs as opposed to just a plain, formatted string) and a
>   lot more. This format is being opened, and this library is meant to
>   provide an implenetation for a LogStore reader, that will eventually
>   support reading all kinds of LogStore files.
>
> EXAMPLE:
>
>   (ns example
>     (:require [balabit.logstore :as logstore]))
>
>   (defn lgstool-cat
>     ([] (lgstool-cat "resources/logstores/short.compressed.store"))
>     ([filename]
>        (logstore/with-file filename
>          (let [indexed-records (zipmap (range (count (logstore/records)))
>                                        (logstore/records))
>                chunk-records (keys (filter #(= :chunk (:type (val %)))
>                                            indexed-records))
>                print-msgs (fn [index]
>                             (dorun (map println (:messages (logstore/nth-record index)))))]
>            (dorun (map print-msgs chunk-records))))))
>
>   (lgstool-cat "/path/to/logstore/messages.store")
>
>   More examples can be found bundled with the sources, and as part of
>   the documentation:
>     http://algernon.github.com/balabit.logstore/#balabit.logstore.examples
>
> FEATURES:
>
>   The library - being in very early alpha stage - can already read some
>   LogStore files, and transparently decompress them, collect meta-data
>   about both the logstore, and the information stored within.
>
>   It comes with an extensive test suite and a lot of examples.
>
> FUTURE DIRECTION:
>
>   We are working on making the library able to deserialize name-value
>   pairs, to make it support decrypting logstores, and paralell to that,
>   we're working on a Java API, so that it can be used from a more
>   familiar language, and still provide a convenient, easy to use API.
>
>   In the future, we also plan to publish ready to use JAR files that one
>   can easily use from any Java or Clojure project.
>
> DOWNLOADS:
>
>   The source is available from the git repository at github:
>     git://github.com/algernon/balabit.logstore.git
>
>   Documentation and more information about the library is available on
>   its homepage at http://algernon.github.com/balabit.logstore/. People
>   interested in the development of the library can also look at the
>   developer docs at:
>     http://algernon.github.com/balabit.logstore/developer-api.html
>



More information about the syslog-ng mailing list