raygun4ruby 2.5.0 → 2.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -1
- data/lib/raygun/client.rb +18 -0
- data/lib/raygun/version.rb +1 -1
- data/lib/raygun.rb +15 -10
- data/lib/raygun4ruby.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 12ad609c25703e38bf187602b1eeb27ed13f9fdb
|
4
|
+
data.tar.gz: 5af743e3db72f0339669b255328d8256be2c6314
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 070d775307e84cd705e14c6c6a245d4508c8dfcb95991da06ef62e825255a12fde096808e27d65a11bc2c2e20e892270f3e005eb65a4c9280575075ed3a45bdc
|
7
|
+
data.tar.gz: 9b011bb6ca157c9fbcd0283721d40a48e90e857425c7055ad93f1445c98eb9c5103c3d7a6bbb2a6e18059bfbf2181d7b66e14c8a0a5ef65782ac84cf6dfcfbe9
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,8 @@
|
|
1
|
+
## 2.6.0 (25/10/2017)
|
2
|
+
|
3
|
+
Features
|
4
|
+
- Enhanced debug logging to assist in resolving issues from support requests ([#128](https://github.com/MindscapeHQ/raygun4ruby/pull/128))
|
5
|
+
|
1
6
|
## 2.5.0 (04/10/2017)
|
2
7
|
|
3
8
|
Features
|
@@ -5,7 +10,7 @@ Features
|
|
5
10
|
|
6
11
|
Bugfixes
|
7
12
|
- Fix crash when recording breadcrumb with uninitialized store ([#126](https://github.com/MindscapeHQ/raygun4ruby/pull/126))
|
8
|
-
- Make raw data handling more
|
13
|
+
- Make raw data handling more robust and fix in unicorn ([#125](https://github.com/MindscapeHQ/raygun4ruby/pull/125))
|
9
14
|
- Backwards compatible affected_user_identifier_methods ([#120](https://github.com/MindscapeHQ/raygun4ruby/pull/120))
|
10
15
|
|
11
16
|
## 2.4.1 (29/08/2017)
|
data/lib/raygun/client.rb
CHANGED
@@ -90,6 +90,8 @@ module Raygun
|
|
90
90
|
end
|
91
91
|
|
92
92
|
def request_information(env)
|
93
|
+
Raygun.log('retrieving request information')
|
94
|
+
|
93
95
|
return {} if env.nil? || env.empty?
|
94
96
|
{
|
95
97
|
hostName: env["SERVER_NAME"],
|
@@ -118,6 +120,8 @@ module Raygun
|
|
118
120
|
end
|
119
121
|
|
120
122
|
def form_params(env)
|
123
|
+
Raygun.log('retrieving form params')
|
124
|
+
|
121
125
|
params = action_dispatch_params(env) || rack_params(env) || {}
|
122
126
|
filter_params_with_blacklist(params, env["action_dispatch.parameter_filter"])
|
123
127
|
end
|
@@ -132,10 +136,12 @@ module Raygun
|
|
132
136
|
end
|
133
137
|
|
134
138
|
def raw_data(rack_env)
|
139
|
+
Raygun.log('retrieving raw data')
|
135
140
|
request = Rack::Request.new(rack_env)
|
136
141
|
|
137
142
|
return unless Raygun.configuration.record_raw_data
|
138
143
|
return if request.get?
|
144
|
+
Raygun.log('passed raw_data checks')
|
139
145
|
|
140
146
|
input = rack_env['rack.input']
|
141
147
|
|
@@ -158,6 +164,7 @@ module Raygun
|
|
158
164
|
|
159
165
|
# see http://raygun.io/raygun-providers/rest-json-api?v=1
|
160
166
|
def build_payload_hash(exception_instance, env = {}, user = nil)
|
167
|
+
Raygun.log('building payload hash')
|
161
168
|
custom_data = filter_custom_data(env) || {}
|
162
169
|
exception_custom_data = if exception_instance.respond_to?(:raygun_custom_data)
|
163
170
|
exception_instance.raygun_custom_data
|
@@ -180,6 +187,8 @@ module Raygun
|
|
180
187
|
configuration_tags = Raygun.configuration.tags
|
181
188
|
end
|
182
189
|
|
190
|
+
Raygun.log('set tags')
|
191
|
+
|
183
192
|
grouping_key = env.delete(:grouping_key)
|
184
193
|
|
185
194
|
configuration_custom_data = Raygun.configuration.custom_data
|
@@ -189,6 +198,8 @@ module Raygun
|
|
189
198
|
configuration_custom_data
|
190
199
|
end
|
191
200
|
|
201
|
+
Raygun.log('set custom data')
|
202
|
+
|
192
203
|
error_details = {
|
193
204
|
machineName: hostname,
|
194
205
|
version: version,
|
@@ -204,6 +215,8 @@ module Raygun
|
|
204
215
|
store = ::Raygun::Breadcrumbs::Store
|
205
216
|
error_details[:breadcrumbs] = store.stored.map(&:build_payload) if store.any?
|
206
217
|
|
218
|
+
Raygun.log('set details and breadcrumbs')
|
219
|
+
|
207
220
|
error_details.merge!(groupingKey: grouping_key) if grouping_key
|
208
221
|
|
209
222
|
user_details = if affected_user_present?(env)
|
@@ -213,7 +226,10 @@ module Raygun
|
|
213
226
|
end
|
214
227
|
error_details.merge!(user: user_details) unless user_details == nil
|
215
228
|
|
229
|
+
Raygun.log('set user details')
|
230
|
+
|
216
231
|
if Raygun.configuration.filter_payload_with_whitelist
|
232
|
+
Raygun.log('filtering payload with whitelist')
|
217
233
|
error_details = filter_payload_with_whitelist(error_details)
|
218
234
|
end
|
219
235
|
|
@@ -224,6 +240,8 @@ module Raygun
|
|
224
240
|
end
|
225
241
|
|
226
242
|
def create_entry(payload_hash)
|
243
|
+
Raygun.log('sending payload to api')
|
244
|
+
|
227
245
|
self.class.post("/entries", verify_peer: true, verify: true, headers: @headers, body: JSON.generate(payload_hash))
|
228
246
|
end
|
229
247
|
|
data/lib/raygun/version.rb
CHANGED
data/lib/raygun.rb
CHANGED
@@ -32,7 +32,6 @@ module Raygun
|
|
32
32
|
CLIENT_NAME = "Raygun4Ruby Gem"
|
33
33
|
|
34
34
|
class << self
|
35
|
-
|
36
35
|
include Testable
|
37
36
|
|
38
37
|
# Configuration Object (instance of Raygun::Configuration)
|
@@ -40,6 +39,8 @@ module Raygun
|
|
40
39
|
|
41
40
|
def setup
|
42
41
|
yield(configuration)
|
42
|
+
|
43
|
+
log("configuration settings: #{configuration.inspect}")
|
43
44
|
end
|
44
45
|
|
45
46
|
def configuration
|
@@ -55,6 +56,8 @@ module Raygun
|
|
55
56
|
end
|
56
57
|
|
57
58
|
def track_exception(exception_instance, env = {}, user = nil, retry_count = 1)
|
59
|
+
log('tracking exception')
|
60
|
+
|
58
61
|
if configuration.send_in_background
|
59
62
|
track_exception_async(exception_instance, env, user, retry_count)
|
60
63
|
else
|
@@ -78,6 +81,8 @@ module Raygun
|
|
78
81
|
method_name: nil,
|
79
82
|
line_number: nil
|
80
83
|
)
|
84
|
+
log('recording breadcrumb')
|
85
|
+
|
81
86
|
Raygun::Breadcrumbs::Store.record(
|
82
87
|
message: message,
|
83
88
|
category: category,
|
@@ -91,7 +96,9 @@ module Raygun
|
|
91
96
|
end
|
92
97
|
|
93
98
|
def log(message)
|
94
|
-
|
99
|
+
return unless configuration.debug
|
100
|
+
|
101
|
+
configuration.logger.info("[Raygun] #{message}") if configuration.logger
|
95
102
|
end
|
96
103
|
|
97
104
|
def failsafe_log(message)
|
@@ -112,17 +119,19 @@ module Raygun
|
|
112
119
|
future = Concurrent::Future.execute { track_exception_sync(*args) }
|
113
120
|
future.add_observer(lambda do |_, value, reason|
|
114
121
|
if value == nil || value.response.code != "202"
|
115
|
-
log("
|
122
|
+
log("unexpected response from Raygun, could indicate error: #{value.inspect}")
|
116
123
|
end
|
117
124
|
end, :call)
|
118
125
|
end
|
119
126
|
|
120
127
|
def track_exception_sync(exception_instance, env, user, retry_count)
|
121
128
|
if should_report?(exception_instance)
|
122
|
-
log(
|
129
|
+
log('attempting to send exception')
|
123
130
|
Client.new.track_exception(exception_instance, env, user)
|
124
131
|
end
|
125
132
|
rescue Exception => e
|
133
|
+
log('error sending exception to raygun, see failsafe logger for more information')
|
134
|
+
|
126
135
|
if configuration.failsafe_logger
|
127
136
|
failsafe_log("Problem reporting exception to Raygun: #{e.class}: #{e.message}\n\n#{e.backtrace.join("\n")}")
|
128
137
|
end
|
@@ -147,17 +156,13 @@ module Raygun
|
|
147
156
|
|
148
157
|
def should_report?(exception)
|
149
158
|
if configuration.silence_reporting
|
150
|
-
|
151
|
-
log('[Raygun] skipping reporting because Configuration.silence_reporting is enabled')
|
152
|
-
end
|
159
|
+
log('skipping reporting because Configuration.silence_reporting is enabled')
|
153
160
|
|
154
161
|
return false
|
155
162
|
end
|
156
163
|
|
157
164
|
if configuration.ignore.flatten.include?(exception.class.to_s)
|
158
|
-
|
159
|
-
log("[Raygun] skipping reporting of exception #{exception.class} because it is in the ignore list")
|
160
|
-
end
|
165
|
+
log("skipping reporting of exception #{exception.class} because it is in the ignore list")
|
161
166
|
|
162
167
|
return false
|
163
168
|
end
|
data/lib/raygun4ruby.rb
CHANGED
@@ -1 +1 @@
|
|
1
|
-
require "raygun"
|
1
|
+
require "raygun"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: raygun4ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mindscape
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-10-
|
12
|
+
date: 2017-10-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: httparty
|