rails_semantic_logger 4.5.1 → 4.6.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/rails_semantic_logger.rb +4 -0
- data/lib/rails_semantic_logger/active_job/log_subscriber.rb +12 -7
- data/lib/rails_semantic_logger/active_record/log_subscriber.rb +2 -2
- data/lib/rails_semantic_logger/engine.rb +9 -0
- data/lib/rails_semantic_logger/extensions/active_support/logger.rb +20 -0
- data/lib/rails_semantic_logger/extensions/active_support/tagged_logging.rb +8 -0
- data/lib/rails_semantic_logger/extensions/mongoid/config.rb +11 -0
- data/lib/rails_semantic_logger/extensions/rack/server.rb +12 -0
- data/lib/rails_semantic_logger/extensions/rails/server.rb +2 -0
- data/lib/rails_semantic_logger/version.rb +1 -1
- metadata +9 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 453828593f931f4f57c75337f47ae552a77be8597ef49bb838a4c4fa032f04a7
|
4
|
+
data.tar.gz: 1a1d9354c9368fb9e14703a422e08b9f5274734b281789d220df793af678ae8b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 69d52f1889d27b459313785c5e98f88e90d8b5367d6c5cca1e10d82d4e7a171095b9cfeae0ceae63b7faaf826e2ef71df36bbc213c7c592a9ceabef75b06e6c8
|
7
|
+
data.tar.gz: a216178a0be935a7c15710d0921fdee562bbe0c46bb5bbd5f2cb5250ad097acdb6142dfd1ec68fe7524afff59d4fc44d2b48d8ea3ad3190f54f539582c65af5f
|
@@ -52,3 +52,7 @@ module RailsSemanticLogger
|
|
52
52
|
|
53
53
|
private_class_method :subscriber_patterns, :unattach
|
54
54
|
end
|
55
|
+
|
56
|
+
require("rails_semantic_logger/extensions/mongoid/config") if defined?(Mongoid)
|
57
|
+
require("rails_semantic_logger/extensions/active_support/logger") if defined?(ActiveSupport::Logger)
|
58
|
+
require("rails_semantic_logger/extensions/rack/server") if defined?(Rack::Server)
|
@@ -5,29 +5,34 @@ module RailsSemanticLogger
|
|
5
5
|
class LogSubscriber < ::ActiveSupport::LogSubscriber
|
6
6
|
def enqueue(event)
|
7
7
|
log_with_formatter event: event do |fmt|
|
8
|
-
"Enqueued #{fmt.job_info}"
|
8
|
+
{message: "Enqueued #{fmt.job_info}"}
|
9
9
|
end
|
10
10
|
end
|
11
11
|
|
12
12
|
def enqueue_at(event)
|
13
13
|
log_with_formatter event: event do |fmt|
|
14
|
-
"Enqueued #{fmt.job_info} at #{fmt.scheduled_at}"
|
14
|
+
{message: "Enqueued #{fmt.job_info} at #{fmt.scheduled_at}"}
|
15
15
|
end
|
16
16
|
end
|
17
17
|
|
18
18
|
def perform_start(event)
|
19
19
|
log_with_formatter event: event do |fmt|
|
20
|
-
"Performing #{fmt.job_info}"
|
20
|
+
{message: "Performing #{fmt.job_info}"}
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
24
24
|
def perform(event)
|
25
25
|
ex = event.payload[:exception_object]
|
26
26
|
if ex
|
27
|
-
|
27
|
+
log_with_formatter event: event, log_duration: true, level: :error do |fmt|
|
28
|
+
{
|
29
|
+
message: "Error performing #{fmt.job_info} in #{event.duration.round(2)}ms",
|
30
|
+
exception: ex
|
31
|
+
}
|
32
|
+
end
|
28
33
|
else
|
29
34
|
log_with_formatter event: event, log_duration: true do |fmt|
|
30
|
-
"Performed #{fmt.job_info} in #{event.duration.round(2)}ms"
|
35
|
+
{message: "Performed #{fmt.job_info} in #{event.duration.round(2)}ms"}
|
31
36
|
end
|
32
37
|
end
|
33
38
|
end
|
@@ -107,10 +112,10 @@ module RailsSemanticLogger
|
|
107
112
|
end
|
108
113
|
end
|
109
114
|
|
110
|
-
def log_with_formatter(**kw_args)
|
115
|
+
def log_with_formatter(level: :info, **kw_args)
|
111
116
|
fmt = EventFormatter.new(**kw_args)
|
112
117
|
msg = yield fmt
|
113
|
-
logger.
|
118
|
+
logger.public_send(level, **msg, payload: fmt.payload)
|
114
119
|
end
|
115
120
|
|
116
121
|
def logger
|
@@ -42,7 +42,7 @@ module RailsSemanticLogger
|
|
42
42
|
|
43
43
|
# Log the location of the query itself.
|
44
44
|
if logger.send(:level_index) >= SemanticLogger.backtrace_level_index
|
45
|
-
log[:backtrace] = SemanticLogger::Utils.strip_backtrace
|
45
|
+
log[:backtrace] = SemanticLogger::Utils.strip_backtrace(caller)
|
46
46
|
end
|
47
47
|
|
48
48
|
logger.debug(log)
|
@@ -178,7 +178,7 @@ module RailsSemanticLogger
|
|
178
178
|
attr = nil
|
179
179
|
end
|
180
180
|
|
181
|
-
[attr&.name, value]
|
181
|
+
[attr&.name || :nil, value]
|
182
182
|
end
|
183
183
|
|
184
184
|
def type_casted_binds_v5_0_3(binds, casted_binds)
|
@@ -214,6 +214,15 @@ module RailsSemanticLogger
|
|
214
214
|
|
215
215
|
# Re-open appenders after Spring has forked a process
|
216
216
|
Spring.after_fork { |_job| ::SemanticLogger.reopen } if defined?(Spring.after_fork)
|
217
|
+
|
218
|
+
console do |_app|
|
219
|
+
# Don't use a background thread for logging
|
220
|
+
SemanticLogger.sync!
|
221
|
+
SemanticLogger.add_appender(io: STDERR, formatter: :color)
|
222
|
+
|
223
|
+
# Include method names on log entries in the console
|
224
|
+
SemanticLogger.backtrace_level = SemanticLogger.default_level
|
225
|
+
end
|
217
226
|
end
|
218
227
|
end
|
219
228
|
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require "active_support/logger"
|
2
|
+
|
3
|
+
module ActiveSupport
|
4
|
+
# More hacks to try and stop Rails from being it's own worst enemy.
|
5
|
+
class Logger
|
6
|
+
# Prevent Console from trying to merge loggers
|
7
|
+
def self.logger_outputs_to?(*args)
|
8
|
+
true
|
9
|
+
end
|
10
|
+
|
11
|
+
# Prevent broadcasting since SemanticLogger already supports multiple loggers
|
12
|
+
def self.broadcast(logger)
|
13
|
+
Module.new
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.new(*args, **kwargs)
|
17
|
+
SemanticLogger[self]
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_semantic_logger
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Reid Morrison
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-06-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rack
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '4.
|
47
|
+
version: '4.8'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '4.
|
54
|
+
version: '4.8'
|
55
55
|
description:
|
56
56
|
email:
|
57
57
|
executables: []
|
@@ -74,6 +74,10 @@ files:
|
|
74
74
|
- lib/rails_semantic_logger/extensions/action_view/streaming_template_renderer.rb
|
75
75
|
- lib/rails_semantic_logger/extensions/active_job/logging.rb
|
76
76
|
- lib/rails_semantic_logger/extensions/active_model_serializers/logging.rb
|
77
|
+
- lib/rails_semantic_logger/extensions/active_support/logger.rb
|
78
|
+
- lib/rails_semantic_logger/extensions/active_support/tagged_logging.rb
|
79
|
+
- lib/rails_semantic_logger/extensions/mongoid/config.rb
|
80
|
+
- lib/rails_semantic_logger/extensions/rack/server.rb
|
77
81
|
- lib/rails_semantic_logger/extensions/rails/server.rb
|
78
82
|
- lib/rails_semantic_logger/options.rb
|
79
83
|
- lib/rails_semantic_logger/rack/logger.rb
|
@@ -90,7 +94,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
90
94
|
requirements:
|
91
95
|
- - ">="
|
92
96
|
- !ruby/object:Gem::Version
|
93
|
-
version: '2.
|
97
|
+
version: '2.5'
|
94
98
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
95
99
|
requirements:
|
96
100
|
- - ">="
|