Class: NameTaggedCeeSyslogger::Logger

Inherits:
Syslogger
  • Object
show all
Defined in:
lib/name_tagged_cee_syslogger/logger.rb

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ Logger

Returns a new instance of Logger.



4
5
6
7
# File 'lib/name_tagged_cee_syslogger/logger.rb', line 4

def initialize(*args)
  super
  @formatter = CeeFormatter.new
end

Instance Method Details

#add(severity, message = nil, progname = nil, &block) ⇒ Object

wraps message with merge_tags



10
11
12
13
14
15
16
17
# File 'lib/name_tagged_cee_syslogger/logger.rb', line 10

def add(severity, message = nil, progname = nil, &block)
  if message.nil? && block.nil? && !progname.nil?
    message, progname = progname, nil
  end
  message = merge_tags(message || block && block.call)

  super(severity, message, progname)
end

#merge_tags(message) ⇒ Object



24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/name_tagged_cee_syslogger/logger.rb', line 24

def merge_tags(message)
  unless message.is_a?(Hash)
    message = { msg: message }
  end

  current_tags.each_with_index do |tag, index|
    if tag.is_a?(Hash)
      message.merge!(tag)
    end
  end

  message
end

#tags_textObject

prevent default tag behavior



20
21
22
# File 'lib/name_tagged_cee_syslogger/logger.rb', line 20

def tags_text
  ""
end