# Observed::Fluentd
TODO: Write a gem description
## Installation
Add this line to your application's Gemfile:
gem 'observed-fluentd'
And then execute:
$ bundle
Or install it yourself as:
$ gem install observed-fluentd
Or `git clone` the sources and install by using rake:
$ rake install
## Usage
First of all, we need to install the fluentd to which we send observed data:
$ gem install fluentd
Then we should configure Fluentd to see data which will be sent from observed-fluentd:
$ fluentd --setup fluent.d
Installed fluent.d/fluent.conf.
Ensure that the following 2 parts exist in the generated fluent.conf:
type stdout
Now we can run Fluentd:
$ fluentd -c fluent.d/fluent.conf
Install observed-fluentd:
$ gem build observed-fluentd.gemspec
$ gem install observed-fluentd
$ gem install observed-http
$ gem install observed-clockwork
Create the observed.conf like:
require 'observed/builtin_plugins'
require 'observed/http'
require 'observed/fluentd'
observe 'myservice', {
plugin: 'http',
method: 'get',
url: 'http://localhost/',
timeout_in_milliseconds: 3000,
}
match /myservice.*/, {
plugin: 'fluentd',
host: 'localhost',
port: 24224,
tag: 'debug.myservice'
}
Run clockwork and trigger observed:
$ cd observe.d/
$ clockwork clockwork.rb
Find data sent from Observed in the Fluentd output:
2013-11-01T07:55:09Z debug.myservice {"status":"success","result":"Get http://localhost/","elapsed_time":0.013686}
Now you can do anything utilizing Fluent's rich features and plugins.
## Developping
To run cucumber tests, execute:
$ bundle install --binstubs
$ bin/cucumber features
## Contributing
1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request