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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b1947daa3dde5ecae7057bc878855cb674650ce9e7fc01ebb36486299f829116
4
- data.tar.gz: 5e17a60724c045590729a95eb9b3774551a811743f55bf8540b1fce37d39383b
3
+ metadata.gz: e567390642459df542d2c963cd1645630b5ed2a582ad662b320f57ea3d68f459
4
+ data.tar.gz: 751266bac6d8bf6c5cd8998a433d053cde43c8e10c474122f57f06b390abb8cb
5
5
  SHA512:
6
- metadata.gz: 41ca05fb4218a8a11f5953ab064ade337d50cec736768adea381f9c29b707e4b763d64d8817064a2ebd5fffb3d8bc66bc23c35e87fe6d350165e045cb3639516
7
- data.tar.gz: 4f4f6cf16b00b4db422b3055dd445253f400493edf683a721e592b08c7eae23b73934293fb8641a90ada5431bd629587861c115e60931d4c3ff6071482317705
6
+ metadata.gz: c07ed396344b2cc9a68b74c7c38a01775c82add5a2e7fabe931649dbc377387b38403d04807a7ddeed716184ac8bdea633ef046c58989b54b855155e5102d931
7
+ data.tar.gz: d8d9503e66e563ddc794b38be3e7e22a0e5e0250c3a463795b76b1b1e5fedfafde1a0fe256175fb2aa22719da3e4f05304219180c05c0e38288cc7afd383b347
@@ -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
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- raygun-apm-rails (1.0.24)
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.23-universal-darwin)
12
+ raygun-apm (1.0.33-universal-darwin)
13
13
 
14
14
  PLATFORMS
15
15
  ruby
@@ -25,9 +25,8 @@ The profiler only supports CRuby, also known as Matz's Ruby Interpreter (MRI).
25
25
 
26
26
  == Supported Rails versions
27
27
 
28
- Rails 4 and up.
28
+ Rails 5 and up.
29
29
 
30
- * Rails 4.x
31
30
  * Rails 5.x
32
31
  * Rails 6.x
33
32
 
@@ -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
- @tracer.end_trace if @tracer
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
- req = Rack::Request.new notification.payload[:headers].env
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] = req.url
102
- event[:verb] = req.request_method
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
@@ -1,7 +1,7 @@
1
1
  module Raygun
2
2
  module Apm
3
3
  module Rails
4
- VERSION = "1.0.24"
4
+ VERSION = "1.0.29"
5
5
  end
6
6
  end
7
7
  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.24
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-01 00:00:00.000000000 Z
12
+ date: 2020-05-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: raygun-apm