No commit activity in last 3 years
No release in over 3 years
Graylog2 adapter for Yell
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

>= 0
< 3, >= 2.0.4
 Project Readme

Yell Gelf - Graylog2 Adapter for Your Extensible Logging Library

If you are not yet familiar with Yell - Your Extensible Logging Library check out the githup project under https://github.com/rudionrails/yell or jump directly into the Yell wiki at https://github.com/rudionrails/yell/wiki.

Just in case you wonder: GELF means Graylog Extended Log Format. Read all it at http://www.graylog2.org/about/gelf.

Build Status

The Graylog adapter for Yell works and is tested with ruby 1.8.7, 1.9.x, jruby 1.8 and 1.9 mode, rubinius 1.8 and 1.9 as well as ree.

Installation

System wide:

gem install yell-adapters-gelf

Or in your Gemfile:

gem "yell-adapters-gelf"

Usage

After you set-up Graylog2 accordingly, you may use the Gelf adapter just like any other.

logger = Yell.new :gelf

# or alternatively with the block syntax
logger = Yell.new do |l|
  l.adapter :gelf
end

logger.info 'Hello World!'

Now check your Graylog2 web server for the received message. By default, the gelf adapter will send the following information to Graylog2:

facility: The GELF facility (default: 'yell')
level: The current log level
timestamp: The time when the log event occured
host: The current hostname
file: The name of the file where the log event occured
line: The line in the file where the log event occured
_method: The method where the log event occured
_pid: The PID of your current process

Example: Running with a different GELF facility

logger = Yell.new :gelf, :facility => 'my own facility'

# or with the block syntax
logger = Yell.new do |l|
  l.adapter :gelf, :facility => 'my own facility'
end

Example: Running Graylog2 on a different host or port

logger = Yell.new :gelf, :host => '127.0.0.1', :port => 1234

# or with the block syntax
logger = Yell.new do |l|
  l.adapter :gelf, :host => '127.0.0.1', :port => 1234
end

logger.info 'Hello World!'

Example: Passing additional keys to the adapter

logger = Yell.new :gelf

logger.info "Hello World", "_thread_id" => Thread.current.object_id, 
                           "_current_user_id" => current_user.id

Copyright © 2012 Rudolf Schmidt, released under the MIT license