eventq_aws 1.6.4 → 1.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/eventq_aws/aws_queue_worker.rb +39 -5
- data/lib/eventq_aws/version.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: 346fa33d554dd48140b9c995e5baec9e675cd402
|
4
|
+
data.tar.gz: c720dead3d863d56f8c9fbeb88fedf8ee07ed6ff
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2003e4317ea719c16915dcbccd177736e564580de045aa58ff4c9332eed52220a3b3656e234c5bfa06c1c24fff94214a15a4fb084c163813f60c5789eaf6e021
|
7
|
+
data.tar.gz: 7e34f363b0e351183c092b3f189fd96039899f6ac747cac21af83e174d9d1921e3b7f12bb599b4f3ed6c5cc06e29c8b7999ef1c3496185337fc804c9ad06c78d
|
@@ -14,6 +14,8 @@ module EventQ
|
|
14
14
|
@is_running = false
|
15
15
|
|
16
16
|
@retry_exceeded_block = nil
|
17
|
+
@on_retry_block = nil
|
18
|
+
@on_error_block = nil
|
17
19
|
|
18
20
|
@hash_helper = HashKit::Helper.new
|
19
21
|
@serialization_provider_manager = EventQ::SerializationProviders::Manager.new
|
@@ -151,7 +153,16 @@ module EventQ
|
|
151
153
|
end
|
152
154
|
|
153
155
|
rescue => e
|
154
|
-
EventQ.log(:error, "[#{self.class}] - An error occurred
|
156
|
+
EventQ.log(:error, "[#{self.class}] - An unhandled error occurred. Error: #{e} | Backtrace: #{e.backtrace}")
|
157
|
+
|
158
|
+
if @on_error_block
|
159
|
+
EventQ.log(:debug, "[#{self.class}] - Executing on error block.")
|
160
|
+
begin
|
161
|
+
@on_error_block.call(e, message)
|
162
|
+
rescue => e2
|
163
|
+
EventQ.log(:error, "[#{self.class}] - An error occurred executing the on error block. Error: #{e2}")
|
164
|
+
end
|
165
|
+
end
|
155
166
|
end
|
156
167
|
|
157
168
|
return received
|
@@ -168,6 +179,16 @@ module EventQ
|
|
168
179
|
@retry_exceeded_block = block
|
169
180
|
end
|
170
181
|
|
182
|
+
def on_retry(&block)
|
183
|
+
@on_retry_block = block
|
184
|
+
return nil
|
185
|
+
end
|
186
|
+
|
187
|
+
def on_error(&block)
|
188
|
+
@on_error_block = block
|
189
|
+
return nil
|
190
|
+
end
|
191
|
+
|
171
192
|
def running?
|
172
193
|
return @is_running
|
173
194
|
end
|
@@ -224,7 +245,7 @@ module EventQ
|
|
224
245
|
|
225
246
|
if message_args.abort || error
|
226
247
|
EventQ::NonceManager.failed(message.id)
|
227
|
-
reject_message(queue, client, msg, q, retry_attempts)
|
248
|
+
reject_message(queue, client, msg, q, retry_attempts, message, message_args.abort)
|
228
249
|
else
|
229
250
|
EventQ::NonceManager.complete(message.id)
|
230
251
|
end
|
@@ -232,11 +253,11 @@ module EventQ
|
|
232
253
|
return true
|
233
254
|
end
|
234
255
|
|
235
|
-
def reject_message(queue, client, msg, q, retry_attempts)
|
256
|
+
def reject_message(queue, client, msg, q, retry_attempts, message, abort)
|
236
257
|
|
237
258
|
if !queue.allow_retry || retry_attempts >= queue.max_retry_attempts
|
238
259
|
|
239
|
-
EventQ.log(:info, "[#{self.class}] - Message rejected removing from queue.
|
260
|
+
EventQ.log(:info, "[#{self.class}] - Message rejected removing from queue. Message: #{serialize_message(message)}")
|
240
261
|
|
241
262
|
#remove the message from the queue so that it does not get retried again
|
242
263
|
client.sqs.delete_message({ queue_url: q, receipt_handle: msg.receipt_handle })
|
@@ -247,7 +268,11 @@ module EventQ
|
|
247
268
|
|
248
269
|
if @retry_exceeded_block != nil
|
249
270
|
EventQ.log(:info, "[#{self.class}] - Executing retry exceeded block.")
|
250
|
-
|
271
|
+
begin
|
272
|
+
@retry_exceeded_block.call(message)
|
273
|
+
rescue => e
|
274
|
+
EventQ.log(:error, "[#{self.class}] - An error occurred executing the on retry block. Error: #{e}")
|
275
|
+
end
|
251
276
|
end
|
252
277
|
|
253
278
|
end
|
@@ -282,6 +307,15 @@ module EventQ
|
|
282
307
|
visibility_timeout: visibility_timeout.to_s, # required
|
283
308
|
})
|
284
309
|
|
310
|
+
if @on_retry_block
|
311
|
+
EventQ.log(:debug, "[#{self.class}] - Executing on retry block.")
|
312
|
+
begin
|
313
|
+
@on_retry_block.call(message, abort)
|
314
|
+
rescue => e
|
315
|
+
EventQ.log(:error, "[#{self.class}] - An error occurred executing the on retry block. Error: #{e}")
|
316
|
+
end
|
317
|
+
end
|
318
|
+
|
285
319
|
end
|
286
320
|
|
287
321
|
end
|
data/lib/eventq_aws/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eventq_aws
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- vaughanbrittonsage
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-12-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|