raygun-apm-rails 1.0.21 → 1.0.26
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/CHANGELOG.rdoc +22 -0
- data/Gemfile.lock +5 -5
- data/README.rdoc +1 -2
- data/lib/raygun/apm/rails.rb +9 -0
- data/lib/raygun/apm/rails/middleware.rb +13 -16
- data/lib/raygun/apm/rails/version.rb +1 -1
- data/raygun-apm-rails.gemspec +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: ea19cac93bd012f421b23f6566a719ae71dcfb262a9a6cf96f61296b954802d4
|
4
|
+
data.tar.gz: c890e8d2b6c63ed3e5c17e738b4b441f578d505a4fb38024170a25fbb7e1a3d5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bbe0aad99e51cb252e65e2527f0028cdb77836338c76974eae4e79de3fb23823c469e2f06c98d174c47cb715d41c40588d97645bd236e107e1a4af643d9c5a67
|
7
|
+
data.tar.gz: da7d18ae333c183b4efac77cad8358c2a8f1f091bf584654605f8055eb11d8024ed6843dd207944ad5292729784a903bf60ca5cb5323547f2392c51229551e3b
|
data/CHANGELOG.rdoc
CHANGED
@@ -1,5 +1,27 @@
|
|
1
1
|
= Changelog
|
2
2
|
|
3
|
+
== 1.0.26 (April 11, 2020)
|
4
|
+
|
5
|
+
* Remove Rails 4 support (no headers element in the notifications hash for HTTP in)
|
6
|
+
|
7
|
+
== 1.0.25 (April 11, 2020)
|
8
|
+
|
9
|
+
* Only ever attempt to emit extended events if a tracer instance is alive
|
10
|
+
|
11
|
+
== 1.0.24 (April 1, 2020)
|
12
|
+
|
13
|
+
* Blacklist Enumeration
|
14
|
+
* Unsubscribe from previously registered AS::Notifications subscribers as child processes emit double HTTP IN and SQL events otherwise
|
15
|
+
|
16
|
+
== 1.0.23 (March 25, 2020)
|
17
|
+
|
18
|
+
* Do not cache PID on HTTP IN and SQL event initializers
|
19
|
+
|
20
|
+
== 1.0.22 (March 24, 2020)
|
21
|
+
|
22
|
+
* Fix local variable typo in the Rails middleware
|
23
|
+
* Blacklist TZInfo
|
24
|
+
|
3
25
|
== 1.0.21 (March 19, 2020)
|
4
26
|
|
5
27
|
* Further improvements of emitting exceptions and other error status codes for apps with and without raygun4ruby installed
|
data/Gemfile.lock
CHANGED
@@ -1,24 +1,24 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
raygun-apm-rails (
|
5
|
-
raygun-apm (~>
|
4
|
+
raygun-apm-rails (1.0.24)
|
5
|
+
raygun-apm (~> 1.0.15)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
10
|
minitest (5.13.0)
|
11
11
|
rake (10.5.0)
|
12
|
-
raygun-apm (
|
12
|
+
raygun-apm (1.0.23-universal-darwin)
|
13
13
|
|
14
14
|
PLATFORMS
|
15
15
|
ruby
|
16
16
|
|
17
17
|
DEPENDENCIES
|
18
|
-
bundler (~> 1.
|
18
|
+
bundler (~> 2.1.4)
|
19
19
|
minitest (~> 5.0)
|
20
20
|
rake (~> 10.0)
|
21
21
|
raygun-apm-rails!
|
22
22
|
|
23
23
|
BUNDLED WITH
|
24
|
-
1.
|
24
|
+
2.1.4
|
data/README.rdoc
CHANGED
data/lib/raygun/apm/rails.rb
CHANGED
@@ -17,7 +17,7 @@ module Raygun
|
|
17
17
|
def instrument(env)
|
18
18
|
res = nil
|
19
19
|
# Can be nil if we had a fatal error
|
20
|
-
@tracer
|
20
|
+
@tracer = Raygun::Apm::Tracer.instance || init_tracer
|
21
21
|
if @tracer
|
22
22
|
# For the exceptional HTTP IN handler
|
23
23
|
@request_started = @tracer.now
|
@@ -36,16 +36,16 @@ module Raygun
|
|
36
36
|
rescue => e
|
37
37
|
Raygun.track_exception(e, env) if Raygun::Apm::Rails.raygun4ruby?
|
38
38
|
end
|
39
|
-
exceptional_http_in_handler(env, status)
|
39
|
+
exceptional_http_in_handler(env, status) if @tracer
|
40
40
|
end
|
41
41
|
end
|
42
42
|
rescue => e
|
43
43
|
Ruby_APM_request_error do
|
44
44
|
raise e rescue nil
|
45
45
|
Raygun.track_exception(e, env) if Raygun::Apm::Rails.raygun4ruby?
|
46
|
-
exceptional_http_in_handler(env, 500)
|
46
|
+
exceptional_http_in_handler(env, 500) if @tracer
|
47
47
|
end
|
48
|
-
|
48
|
+
exception = e
|
49
49
|
end
|
50
50
|
end
|
51
51
|
# Can be nil if we had a fatal error
|
@@ -62,12 +62,14 @@ module Raygun
|
|
62
62
|
tracer.process_started
|
63
63
|
ObjectSpace.define_finalizer(self, self.class.finalize(tracer))
|
64
64
|
|
65
|
+
ActiveSupport::Notifications.unsubscribe(@http_in_subscriber) if @http_in_subscriber
|
65
66
|
@http_in_subscriber = ActiveSupport::Notifications.subscribe('process_action.action_controller') do |*args|
|
66
|
-
http_in_handler(args)
|
67
|
+
http_in_handler(args) if @tracer
|
67
68
|
end
|
68
69
|
|
70
|
+
ActiveSupport::Notifications.unsubscribe(@sql_subscriber) if @sql_subscriber
|
69
71
|
@sql_subscriber = ActiveSupport::Notifications.subscribe('sql.active_record') do |*args|
|
70
|
-
sql_handler(args)
|
72
|
+
sql_handler(args) if @tracer
|
71
73
|
end
|
72
74
|
|
73
75
|
GC.stress = true if ENV['RAYGUN_STRESS_GC']
|
@@ -95,6 +97,7 @@ module Raygun
|
|
95
97
|
end
|
96
98
|
req = Rack::Request.new notification.payload[:headers].env
|
97
99
|
event = http_in_event
|
100
|
+
event[:pid] = Process.pid
|
98
101
|
event[:url] = req.url
|
99
102
|
event[:verb] = req.request_method
|
100
103
|
event[:status] = notification.payload[:status]
|
@@ -112,6 +115,7 @@ module Raygun
|
|
112
115
|
def exceptional_http_in_handler(env, status)
|
113
116
|
req = Rack::Request.new env
|
114
117
|
event = http_in_event
|
118
|
+
event[:pid] = Process.pid
|
115
119
|
event[:url] = req.url
|
116
120
|
event[:verb] = req.request_method
|
117
121
|
event[:status] = status
|
@@ -125,11 +129,7 @@ module Raygun
|
|
125
129
|
end
|
126
130
|
|
127
131
|
def http_in_event
|
128
|
-
@http_in_event ||=
|
129
|
-
event = Raygun::Apm::Event::HttpIn.new
|
130
|
-
event[:pid] = Process.pid
|
131
|
-
event
|
132
|
-
end
|
132
|
+
@http_in_event ||= Raygun::Apm::Event::HttpIn.new
|
133
133
|
end
|
134
134
|
|
135
135
|
def sql_handler(args)
|
@@ -140,6 +140,7 @@ module Raygun
|
|
140
140
|
ObjectSpace._id2ref(notification.payload[:connection_id])
|
141
141
|
end
|
142
142
|
event = sql_event
|
143
|
+
event[:pid] = Process.pid
|
143
144
|
event[:query] = notification.payload[:sql]
|
144
145
|
|
145
146
|
# XXX this is hacky
|
@@ -160,11 +161,7 @@ module Raygun
|
|
160
161
|
end
|
161
162
|
|
162
163
|
def sql_event
|
163
|
-
@sql_event ||=
|
164
|
-
event = Raygun::Apm::Event::Sql.new
|
165
|
-
event[:pid] = Process.pid
|
166
|
-
event
|
167
|
-
end
|
164
|
+
@sql_event ||= Raygun::Apm::Event::Sql.new
|
168
165
|
end
|
169
166
|
|
170
167
|
def Ruby_APM_profiler_trace
|
data/raygun-apm-rails.gemspec
CHANGED
@@ -21,7 +21,7 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.require_paths = ["lib"]
|
22
22
|
|
23
23
|
spec.add_dependency "raygun-apm", "~> 1.0.15"
|
24
|
-
spec.add_development_dependency "bundler", "~> 1.
|
24
|
+
spec.add_development_dependency "bundler", "~> 2.1.4"
|
25
25
|
spec.add_development_dependency "rake", "~> 10.0"
|
26
26
|
spec.add_development_dependency "minitest", "~> 5.0"
|
27
27
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: raygun-apm-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.26
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Raygun
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2020-
|
12
|
+
date: 2020-04-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: raygun-apm
|
@@ -31,14 +31,14 @@ dependencies:
|
|
31
31
|
requirements:
|
32
32
|
- - "~>"
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version:
|
34
|
+
version: 2.1.4
|
35
35
|
type: :development
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
39
|
- - "~>"
|
40
40
|
- !ruby/object:Gem::Version
|
41
|
-
version:
|
41
|
+
version: 2.1.4
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
43
|
name: rake
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|