Class: NatsWork::JSONFormatter

Inherits:
Logger::Formatter
  • Object
show all
Defined in:
lib/natswork/logging.rb

Instance Method Summary collapse

Instance Method Details

#call(severity, timestamp, progname, msg) ⇒ Object



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# File 'lib/natswork/logging.rb', line 64

def call(severity, timestamp, progname, msg)
  log_entry = {
    timestamp: timestamp.utc.iso8601,
    severity: severity,
    progname: progname
  }

  if msg.is_a?(Hash)
    log_entry.merge!(msg)
  else
    log_entry[:message] = msg
  end

  "#{log_entry.to_json}\n"
end