class Logged::Formatter::Logstash

Logstash formatter for logged

Public Class Methods

new(message_formatter = nil) click to toggle source
# File lib/logged/formatter/logstash.rb, line 10
def initialize(message_formatter = nil)
  @message_formatter = message_formatter || KeyValue.new
end

Public Instance Methods

call(data) click to toggle source
# File lib/logged/formatter/logstash.rb, line 14
def call(data)
  load_dependencies

  event = LogStash::Event.new(data)
  event[:message] ||= @message_formatter.call(data)

  event.to_json
end

Private Instance Methods

load_dependencies() click to toggle source
# File lib/logged/formatter/logstash.rb, line 25
def load_dependencies
  require 'logstash-event'
rescue LoadError
  warn('You need to install the logstash-event gem to use the logstash formatter.')
  raise
end