Class: Philotic::Logging::Logger

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#connectionObject

Returns the value of attribute connection.



9
10
11
# File 'lib/philotic/logging/logger.rb', line 9

def connection
  @connection
end

#message_classObject



11
12
13
# File 'lib/philotic/logging/logger.rb', line 11

def message_class
  @message_class ||= Philotic::Logging::Message
end

Instance Method Details

#add(severity, message = nil, progname = nil) ⇒ Object Also known as: log



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/philotic/logging/logger.rb', line 15

def add(severity, message = nil, progname = nil)
  severity ||= UNKNOWN
  if @logdev.nil? or severity < @level
    return true
  end
  progname ||= @progname
  if message.nil?
    if block_given?
      message = yield
    else
      message  = progname
      progname = @progname
    end
  end
  @logdev.write(format_message(format_severity(severity), Time.now, progname, message))
  begin
    message = message_class.new(severity, message, progname)
    connection.publish message if connection
  rescue => e
    @logdev.write(format_message(format_severity(Logger::ERROR), Time.now, progname, e.message))
  end
  true
end