Class: Code0::ZeroTrack::Logs::JsonFormatter
- Inherits:
-
Logger::Formatter
- Object
- Logger::Formatter
- Code0::ZeroTrack::Logs::JsonFormatter
show all
- Defined in:
- lib/code0/zero_track/logs/json_formatter.rb
Defined Under Namespace
Classes: NoOpTagStack, Tagged
Instance Method Summary
collapse
Instance Method Details
#call(severity, datetime, _progname, message) ⇒ Object
7
8
9
|
# File 'lib/code0/zero_track/logs/json_formatter.rb', line 7
def call(severity, datetime, _progname, message)
JSON.generate(data(severity, datetime, message)) << "\n"
end
|
#chomp(message) ⇒ Object
26
27
28
29
30
|
# File 'lib/code0/zero_track/logs/json_formatter.rb', line 26
def chomp(message)
message.chomp! until message.chomp == message
message.strip
end
|
#data(severity, datetime, message) ⇒ Object
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# File 'lib/code0/zero_track/logs/json_formatter.rb', line 11
def data(severity, datetime, message)
data = {}
data[:severity] = severity
data[:time] = datetime.utc.iso8601(3)
case message
when String
data[:message] = chomp message
when Hash
data.merge!(message)
end
data.merge!(Code0::ZeroTrack::Context.current.to_h)
end
|