rails_spotlight 0.4.1 → 0.4.2
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e3080195b8e2481d0af07b1c8a7c0e5d59dc7b90d95afc82e722514676003d01
|
4
|
+
data.tar.gz: 472e0580e0e7fceb406bc6810be98ea2945232f673deaaecd28737d3c9bf54ff
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f72425d6484fe1574d05d5f44189265bab421e834fdde23c9e2c96df0911f0b673750395d86e2b45563cac53dc3f0fc2d82794262c7d24ab3787161890259225
|
7
|
+
data.tar.gz: 98cf2fb54e51e960022a2819aabe04f21bfa66d2f7dd34057fb2fb2d5c4a23481c635d3f40deabc1f387d700b6a1dfb152b1ed5be0135c7ec0139e947db9cb78
|
@@ -28,39 +28,34 @@ module RailsSpotlight
|
|
28
28
|
true
|
29
29
|
end
|
30
30
|
|
31
|
-
|
32
|
-
|
33
|
-
_rails_spotlight_log(:debug, message)
|
31
|
+
|
32
|
+
def debug(message = nil, *args, &block)
|
33
|
+
_rails_spotlight_log(:debug, message, nil, :event, &block)
|
34
34
|
super
|
35
35
|
end
|
36
36
|
|
37
|
-
def info(message = nil, *args)
|
38
|
-
message
|
39
|
-
_rails_spotlight_log(:info, message)
|
37
|
+
def info(message = nil, *args, &block)
|
38
|
+
_rails_spotlight_log(:info, message, nil, :event, &block)
|
40
39
|
super
|
41
40
|
end
|
42
41
|
|
43
|
-
def warn(message = nil, *args)
|
44
|
-
message
|
45
|
-
_rails_spotlight_log(:warn, message)
|
42
|
+
def warn(message = nil, *args, &block)
|
43
|
+
_rails_spotlight_log(:warn, message, nil, :event, &block)
|
46
44
|
super
|
47
45
|
end
|
48
46
|
|
49
|
-
def error(message = nil, *args)
|
50
|
-
message
|
51
|
-
_rails_spotlight_log(:error, message)
|
47
|
+
def error(message = nil, *args, &block)
|
48
|
+
_rails_spotlight_log(:error, message, nil, :event, &block)
|
52
49
|
super
|
53
50
|
end
|
54
51
|
|
55
|
-
def fatal(message = nil, *args)
|
56
|
-
message
|
57
|
-
_rails_spotlight_log(:fatal, message)
|
52
|
+
def fatal(message = nil, *args, &block)
|
53
|
+
_rails_spotlight_log(:fatal, message, nil, :event, &block)
|
58
54
|
super
|
59
55
|
end
|
60
56
|
|
61
|
-
def unknown(message = nil, *args)
|
62
|
-
message
|
63
|
-
_rails_spotlight_log(:unknown, message)
|
57
|
+
def unknown(message = nil, *args, &block)
|
58
|
+
_rails_spotlight_log(:unknown, message, nil, :event, &block)
|
64
59
|
super
|
65
60
|
end
|
66
61
|
|
@@ -76,15 +71,15 @@ module RailsSpotlight
|
|
76
71
|
def _rails_spotlight_log(level, message, progname = nil, output = :event)
|
77
72
|
callsite = Utils.dev_callsite(caller.drop(1))
|
78
73
|
name = progname.is_a?(String) || progname.is_a?(Symbol) ? progname : nil
|
79
|
-
output == :event
|
74
|
+
message = yield if output == :event && message.nil? && block_given?
|
75
|
+
output == :event ? _push_event(level, message, name, callsite) : _broadcast_log(message, level, callsite, name)
|
80
76
|
rescue StandardError => e
|
81
77
|
RailsSpotlight.config.logger.fatal("#{e.message}\n #{e.backtrace.join("\n ")}")
|
82
78
|
end
|
83
79
|
|
84
|
-
def _push_event(level, message, progname = nil)
|
85
|
-
callsite = Utils.dev_callsite(caller.drop(1)) || {}
|
80
|
+
def _push_event(level, message, progname = nil, callsite = {})
|
86
81
|
name = progname.is_a?(String) || progname.is_a?(Symbol) ? progname : nil
|
87
|
-
AppRequest.current.events << Event.new('rsl.notification.log', 0, 0, 0, callsite.merge(message: message, level: level, progname: name)) if AppRequest.current
|
82
|
+
AppRequest.current.events << Event.new('rsl.notification.log', 0, 0, 0, (callsite || {}).merge(message: message, level: level, progname: name)) if AppRequest.current
|
88
83
|
rescue StandardError => e
|
89
84
|
RailsSpotlight.config.logger.fatal("#{e.message}\n #{e.backtrace.join("\n ")}")
|
90
85
|
end
|
@@ -14,22 +14,31 @@ module RailsSpotlight
|
|
14
14
|
|
15
15
|
private
|
16
16
|
|
17
|
-
def
|
17
|
+
def transactional(&block)
|
18
|
+
return block.call if force_execution?
|
19
|
+
|
18
20
|
ActiveRecord::Base.transaction do
|
19
|
-
begin
|
20
|
-
|
21
|
-
run
|
22
|
-
end
|
23
|
-
rescue => e # rubocop:disable Style/RescueStandardError
|
24
|
-
self.error = e
|
21
|
+
begin
|
22
|
+
block.call
|
25
23
|
ensure
|
26
|
-
raise ActiveRecord::Rollback
|
24
|
+
raise ActiveRecord::Rollback
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
def transaction
|
30
|
+
begin # rubocop:disable Style/RedundantBegin
|
31
|
+
ActiveSupport::Notifications.subscribed(method(:logger), 'sql.active_record', monotonic: true) do
|
32
|
+
run
|
27
33
|
end
|
34
|
+
rescue => e # rubocop:disable Style/RescueStandardError
|
35
|
+
self.error = e
|
28
36
|
end
|
29
37
|
end
|
30
38
|
|
31
39
|
def run # rubocop:disable Metrics/AbcSize
|
32
40
|
RailsSpotlight.config.logger && RailsSpotlight.config.logger.info("Executing query: #{query}") # rubocop:disable Style/SafeNavigation
|
41
|
+
|
33
42
|
return self.result = ActiveRecord::Base.connection.exec_query(query) if connection_options.blank? || !ActiveRecord::Base.respond_to?(:connects_to)
|
34
43
|
|
35
44
|
connections = ActiveRecord::Base.connects_to(**connection_options)
|
@@ -48,7 +57,7 @@ module RailsSpotlight
|
|
48
57
|
result: result,
|
49
58
|
logs: logs,
|
50
59
|
error: error.present? ? error.inspect : nil,
|
51
|
-
|
60
|
+
query_mode: force_execution? ? 'force' : 'default'
|
52
61
|
}
|
53
62
|
end
|
54
63
|
|
@@ -80,9 +89,9 @@ module RailsSpotlight
|
|
80
89
|
|
81
90
|
def connection_options
|
82
91
|
@connection_options ||= raw_options
|
83
|
-
|
84
|
-
|
85
|
-
|
92
|
+
.symbolize_keys
|
93
|
+
.slice(:database, :shards)
|
94
|
+
.reject { |_, v| v.nil? || (!v.is_a?(TrueClass) && !v.is_a?(FalseClass) && v.empty?) } # TODO: Check for each rails version
|
86
95
|
end
|
87
96
|
|
88
97
|
def force_execution?
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_spotlight
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pawel Niemczyk
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-11-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rack-contrib
|
@@ -39,7 +39,7 @@ dependencies:
|
|
39
39
|
version: 3.0.0
|
40
40
|
- - "<"
|
41
41
|
- !ruby/object:Gem::Version
|
42
|
-
version: '
|
42
|
+
version: '8.1'
|
43
43
|
type: :runtime
|
44
44
|
prerelease: false
|
45
45
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -49,7 +49,7 @@ dependencies:
|
|
49
49
|
version: 3.0.0
|
50
50
|
- - "<"
|
51
51
|
- !ruby/object:Gem::Version
|
52
|
-
version: '
|
52
|
+
version: '8.1'
|
53
53
|
- !ruby/object:Gem::Dependency
|
54
54
|
name: action-cable-testing
|
55
55
|
requirement: !ruby/object:Gem::Requirement
|