= Fluentd

Fluentd is an event collector system. It is a generalized version of syslogd, which handles JSON objects for its log messages.

== Architecture

Fluentd collects events from various data sources and writes them to files, database or other types of storages:

    
    Web apps  ---+                 +--> file
                 |                 |
                 +-->           ---+
    /var/log  ------>  Fluentd  ------> mail
                 +-->           ---+
                 |                 |
    Apache    ----                 +--> Fluentd
    

Fluent also supports log transfer:

    
    Web server
    +---------+
    | Fluentd -------
    +---------+|     |
     +---------+     |
                     |
    Proxy server     |    Log server, Amazon S3, HDFS, ...
    +---------+      +--> +---------+
    | Fluentd ----------> | Fluentd ||
    +---------+|     +--> +---------+|
     +---------+     |     +---------+
                     |
    Database server  |
    +---------+      |
    | Fluentd ---------> mail
    +---------+|
     +---------+
    

An event consists of *tag*, *time* and *record*. Tag is a string separated with '.' (e.g. myapp.access). It is used to categorize events. Time is a UNIX time recorded at occurrence of an event. Record is a JSON object.


== Quick Start

  $ gem install fluentd
  $ # install sample configuration file to the directory
  $ sudo fluentd -s
  $ fluentd &
  $ echo '{"json":"message"}' | fluent-cat debug.test

== Meta

Web site::  http://fluentd.org/
Documents:: http://fluentd.org/doc/
Source repository:: http://github.com/fluent
Discussion:: http://groups.google.com/group/fluentd
Author:: Sadayuki Furuhashi
Copyright:: (c) 2011 FURUHASHI Sadayuki
License:: Apache License, Version 2.0

== Contributors:

Patches contributed by:

* {Abhishek Parolkar}[https://github.com/parolkar]
* {Chad Skidmore}[https://github.com/chad-skidmore]
* {Eiichiro Iwata}[http://github.com/eiichiroi]
* {Francesc Esplugas}[https://github.com/fesplugas]
* {hirochachacha}[https://github.com/hirochachacha]
* {Hiro Yoshikawa}[https://github.com/hiroyoshikawa]
* {Masahiro Nakagawa}[https://github.com/repeatedly]
* {Nathan Parry}[https://github.com/nparry]
* {Nobuyuki Kubota}[https://github.com/nobu-k]
* {Sakuro Ozawa}[https://github.com/sakuro]
* {Satoshi Tagomori}[https://github.com/tagomoris]
* {Takashi Nagayasu}[https://github.com/sumipan]
* {Tsuyoshi Ozawa}[https://github.com/oza]
* {uu59}[https://github.com/uu59]
* {Waldemar Quevedo Salinas}[https://github.com/wallyqs]
* {Yuichi Tateno}[https://github.com/hotchpotch]