contextual_logger 0.10.0.pre.1 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/contextual_logger.rb +12 -10
- data/lib/contextual_logger/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2fe842aebc69d35423b8b06cb1c3dc270fc64d5541293c946dc8eb4f6bc274ed
|
4
|
+
data.tar.gz: b3591004af708bd8722c313c222bf85dc4452053d2d2deb7c8abda72a500391e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f79aa7e16d8b788b8b641fd8d62109f67c4e566ee4bb90a816fd9cf894729bc74354bcb01935ff6f15a3ed330bb0ea56629d9ad7cc24ef4d3cbe68fe8203270c
|
7
|
+
data.tar.gz: ec0406c0265718ee617a55f209e004805df6ce516d36a080680dda648e59ffd61ae48ebd654f1ced16db34c4bfcd83584002757b1abb8ce8fb6104582dca0307
|
data/lib/contextual_logger.rb
CHANGED
@@ -87,9 +87,7 @@ module ContextualLogger
|
|
87
87
|
if arg.nil?
|
88
88
|
add(#{log_level}, nil, context, &block)
|
89
89
|
elsif block
|
90
|
-
add(#{log_level}, nil, context)
|
91
|
-
"\#{ContextualLogger.normalize_message(arg)}: \#{ContextualLogger.normalize_message(block.call)}"
|
92
|
-
end
|
90
|
+
add(#{log_level}, nil, context.merge(progname: arg), &block)
|
93
91
|
else
|
94
92
|
add(#{log_level}, arg, context)
|
95
93
|
end
|
@@ -102,13 +100,15 @@ module ContextualLogger
|
|
102
100
|
severity >= level
|
103
101
|
end
|
104
102
|
|
103
|
+
# Note that this interface needs to stay compatible with the underlying ::Logger#add interface,
|
104
|
+
# which is: def add(severity, message = nil, progname = nil)
|
105
105
|
def add(arg_severity, arg1 = nil, arg2 = nil, **context) # Ruby will prefer to match hashes up to last ** argument
|
106
106
|
severity = arg_severity || UNKNOWN
|
107
107
|
if log_level_enabled?(severity)
|
108
108
|
if arg1.nil?
|
109
109
|
if block_given?
|
110
110
|
message = yield
|
111
|
-
progname = arg2 || @progname
|
111
|
+
progname = arg2 || context.delete(:progname) || @progname
|
112
112
|
else
|
113
113
|
message = arg2
|
114
114
|
progname = @progname
|
@@ -138,22 +138,24 @@ module ContextualLogger
|
|
138
138
|
end
|
139
139
|
|
140
140
|
def format_message(severity, timestamp, progname, message, context: {})
|
141
|
+
normalized_message = ContextualLogger.normalize_message(message)
|
142
|
+
normalized_progname = ContextualLogger.normalize_message(progname) unless progname.nil?
|
141
143
|
if @formatter
|
142
|
-
@formatter.call(severity, timestamp,
|
144
|
+
@formatter.call(severity, timestamp, normalized_progname, { message: normalized_message }.merge!(context))
|
143
145
|
else
|
144
|
-
"#{basic_json_log_entry(severity, timestamp,
|
146
|
+
"#{basic_json_log_entry(severity, timestamp, normalized_progname, normalized_message, context: context)}\n"
|
145
147
|
end
|
146
148
|
end
|
147
149
|
|
148
|
-
def basic_json_log_entry(severity, timestamp,
|
150
|
+
def basic_json_log_entry(severity, timestamp, normalized_progname, normalized_message, context:)
|
149
151
|
message_hash = {
|
150
|
-
message:
|
152
|
+
message: normalized_progname ? "#{normalized_progname}: #{normalized_message}" : normalized_message,
|
151
153
|
severity: severity,
|
152
154
|
timestamp: timestamp
|
153
155
|
}
|
154
|
-
message_hash[:progname] =
|
156
|
+
message_hash[:progname] = normalized_progname if normalized_progname
|
155
157
|
|
156
|
-
#
|
158
|
+
# merge! is faster and OK here since message_hash is still local only to this method
|
157
159
|
message_hash.merge!(context).to_json
|
158
160
|
end
|
159
161
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: contextual_logger
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.10.0
|
4
|
+
version: 0.10.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Ebentier
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-09-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|
@@ -67,9 +67,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
67
67
|
version: '0'
|
68
68
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
69
69
|
requirements:
|
70
|
-
- - "
|
70
|
+
- - ">="
|
71
71
|
- !ruby/object:Gem::Version
|
72
|
-
version:
|
72
|
+
version: '0'
|
73
73
|
requirements: []
|
74
74
|
rubygems_version: 3.0.3
|
75
75
|
signing_key:
|