27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
# File 'lib/datadog/logging/formatter/json_formatter.rb', line 27
def call(_severity, time, progname, msg)
base_message = { time: time }
base_message[:progname] = progname unless progname.nil? || progname.empty?
message = case msg
when String
base_message.merge(message: msg)
when Exception
base_message.merge(error: {
kind: msg.class.name, message: msg.message, stack: msg.backtrace
})
when Hash
base_message.merge(msg)
else
base_message.merge(message: msg.inspect)
end
"#{message.to_json}\n"
end
|