raygun-apm-rails 1.0.24 → 1.0.29
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 +20 -0
- data/Gemfile.lock +2 -2
- data/README.rdoc +1 -2
- data/lib/raygun/apm/rails.rb +26 -0
- data/lib/raygun/apm/rails/middleware.rb +18 -8
- data/lib/raygun/apm/rails/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e567390642459df542d2c963cd1645630b5ed2a582ad662b320f57ea3d68f459
|
4
|
+
data.tar.gz: 751266bac6d8bf6c5cd8998a433d053cde43c8e10c474122f57f06b390abb8cb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c07ed396344b2cc9a68b74c7c38a01775c82add5a2e7fabe931649dbc377387b38403d04807a7ddeed716184ac8bdea633ef046c58989b54b855155e5102d931
|
7
|
+
data.tar.gz: d8d9503e66e563ddc794b38be3e7e22a0e5e0250c3a463795b76b1b1e5fedfafde1a0fe256175fb2aa22719da3e4f05304219180c05c0e38288cc7afd383b347
|
data/CHANGELOG.rdoc
CHANGED
@@ -1,5 +1,25 @@
|
|
1
1
|
= Changelog
|
2
2
|
|
3
|
+
== 1.0.29 (May 3, 2020)
|
4
|
+
|
5
|
+
* Blacklist a new set of methods injected at runtime by Rails which leads to messy traces
|
6
|
+
|
7
|
+
== 1.0.28 (April 11, 2020)
|
8
|
+
|
9
|
+
* Prefer local variables to Rack::Request methods for event value assignment (Rails 4)
|
10
|
+
|
11
|
+
== 1.0.27 (April 11, 2020)
|
12
|
+
|
13
|
+
* Restore Rails 4 support with caveat that HTTP IN paths are not fully qualified with protocol, host and port
|
14
|
+
|
15
|
+
== 1.0.26 (April 11, 2020)
|
16
|
+
|
17
|
+
* Remove Rails 4 support (no headers element in the notifications hash for HTTP in)
|
18
|
+
|
19
|
+
== 1.0.25 (April 11, 2020)
|
20
|
+
|
21
|
+
* Only ever attempt to emit extended events if a tracer instance is alive
|
22
|
+
|
3
23
|
== 1.0.24 (April 1, 2020)
|
4
24
|
|
5
25
|
* Blacklist Enumeration
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
raygun-apm-rails (1.0.
|
4
|
+
raygun-apm-rails (1.0.29)
|
5
5
|
raygun-apm (~> 1.0.15)
|
6
6
|
|
7
7
|
GEM
|
@@ -9,7 +9,7 @@ GEM
|
|
9
9
|
specs:
|
10
10
|
minitest (5.13.0)
|
11
11
|
rake (10.5.0)
|
12
|
-
raygun-apm (1.0.
|
12
|
+
raygun-apm (1.0.33-universal-darwin)
|
13
13
|
|
14
14
|
PLATFORMS
|
15
15
|
ruby
|
data/README.rdoc
CHANGED
data/lib/raygun/apm/rails.rb
CHANGED
@@ -83,6 +83,32 @@ module Raygun
|
|
83
83
|
+Raygun::Apm::Rails::Middleware::Ruby_APM_profiler_trace
|
84
84
|
+Raygun::Apm::Rails::Middleware::Ruby_APM_request_error
|
85
85
|
+Raygun::track_exception
|
86
|
+
WebpackHelper
|
87
|
+
Ripper
|
88
|
+
Webpack
|
89
|
+
AfterCommitQueue
|
90
|
+
Hamlit
|
91
|
+
__callbacks
|
92
|
+
_reflections
|
93
|
+
attribute_aliases
|
94
|
+
default_scope_override
|
95
|
+
_routes
|
96
|
+
table_name_prefix
|
97
|
+
_validators
|
98
|
+
attribute_type_decorations
|
99
|
+
middleware_stack
|
100
|
+
_helpers
|
101
|
+
_layout
|
102
|
+
updated_at_before_type_cast
|
103
|
+
created_at_before_type_cast
|
104
|
+
_include_layout?
|
105
|
+
after_remove_for_
|
106
|
+
before_remove_for_
|
107
|
+
before_add_for_
|
108
|
+
after_add_for_
|
109
|
+
autosave_associated_records_for_
|
110
|
+
validate_associated_records_for_
|
111
|
+
will_save_change_to_
|
86
112
|
}
|
87
113
|
|
88
114
|
def self.raygun4ruby?
|
@@ -36,20 +36,23 @@ 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
|
52
|
-
|
52
|
+
if @tracer
|
53
|
+
@tracer.end_trace
|
54
|
+
@tracer.diagnostics if ENV['PROTON_DIAGNOSTICS']
|
55
|
+
end
|
53
56
|
raise exception if exception
|
54
57
|
res
|
55
58
|
rescue Raygun::Apm::FatalError => e
|
@@ -64,12 +67,12 @@ module Raygun
|
|
64
67
|
|
65
68
|
ActiveSupport::Notifications.unsubscribe(@http_in_subscriber) if @http_in_subscriber
|
66
69
|
@http_in_subscriber = ActiveSupport::Notifications.subscribe('process_action.action_controller') do |*args|
|
67
|
-
http_in_handler(args)
|
70
|
+
http_in_handler(args) if @tracer
|
68
71
|
end
|
69
72
|
|
70
73
|
ActiveSupport::Notifications.unsubscribe(@sql_subscriber) if @sql_subscriber
|
71
74
|
@sql_subscriber = ActiveSupport::Notifications.subscribe('sql.active_record') do |*args|
|
72
|
-
sql_handler(args)
|
75
|
+
sql_handler(args) if @tracer
|
73
76
|
end
|
74
77
|
|
75
78
|
GC.stress = true if ENV['RAYGUN_STRESS_GC']
|
@@ -95,11 +98,18 @@ module Raygun
|
|
95
98
|
if notification.payload[:exception]
|
96
99
|
return
|
97
100
|
end
|
98
|
-
|
101
|
+
if headers = notification.payload[:headers]
|
102
|
+
req = Rack::Request.new headers.env
|
103
|
+
url = req.url
|
104
|
+
verb = req.request_method
|
105
|
+
else
|
106
|
+
url = notification.payload[:path]
|
107
|
+
verb = notification.payload[:method].to_s.upcase
|
108
|
+
end
|
99
109
|
event = http_in_event
|
100
110
|
event[:pid] = Process.pid
|
101
|
-
event[:url] =
|
102
|
-
event[:verb] =
|
111
|
+
event[:url] = url
|
112
|
+
event[:verb] = verb
|
103
113
|
event[:status] = notification.payload[:status]
|
104
114
|
# XXX constant milliseconds to microseconds
|
105
115
|
event[:duration] = notification.duration * 1000
|
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.29
|
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-04
|
12
|
+
date: 2020-05-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: raygun-apm
|