Class: Rory::Logger

Inherits:
Logger
  • Object
show all
Defined in:
lib/rory/logger.rb

Defined Under Namespace

Classes: Formatter

Instance Method Summary collapse

Constructor Details

#initialize(io, options = {}) ⇒ Logger

Returns a new instance of Logger.



6
7
8
9
10
# File 'lib/rory/logger.rb', line 6

def initialize(io, options={})
  super(io)
  @default_formatter = Formatter.new
  @tagged            = options.fetch(:tagged, [:request_id])
end

Instance Method Details

#<<(msg) ⇒ Object Also known as: write



12
13
14
# File 'lib/rory/logger.rb', line 12

def <<(msg)
  super([tagged, msg].reject(&:empty?).join(" "))
end

#request_idObject



18
19
20
# File 'lib/rory/logger.rb', line 18

def request_id
  Thread.current.get_inheritable_attribute(:rory_request_id)
end

#taggedObject



22
23
24
25
26
# File 'lib/rory/logger.rb', line 22

def tagged
  @tagged.map do |key|
    "#{key}=#{quoted_string(public_send(key))}"
  end.join(" ").rstrip
end