sidekiq_metered_exceptions 0.2.1 → 0.3.3
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/Gemfile.lock +26 -28
- data/VERSION +1 -1
- data/lib/metered_raven_error_handler.rb +20 -5
- data/sidekiq_metered_exceptions.gemspec +4 -4
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bc937fac34504b327d11e95bacd4b86a5d5c72f4
|
4
|
+
data.tar.gz: 7815de00fff56b82ad0fac3eb1b34894e1204405
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 459dd9ded4400d9458de49240438b58d82be2ea271955db6a20950364257774fed630c7b2732f567d4f0a7a89e753130b2f49ffcf6173f80d457a96bd27f6ee5
|
7
|
+
data.tar.gz: ec516b73d69aa95e727428f27615bbdc888975955b175145f7017cf403dda9233a43c102a16a2e2be9610c0d86758dec9bd602e5d9b812ff2988fb7e48bbb439
|
data/Gemfile.lock
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
GEM
|
2
2
|
remote: http://rubygems.org/
|
3
3
|
specs:
|
4
|
-
addressable (2.
|
5
|
-
public_suffix (~> 2.0, >= 2.0.2)
|
4
|
+
addressable (2.4.0)
|
6
5
|
builder (3.2.3)
|
7
6
|
celluloid (0.14.1)
|
8
7
|
timers (>= 1.0.0)
|
@@ -12,47 +11,46 @@ GEM
|
|
12
11
|
faraday (0.9.2)
|
13
12
|
multipart-post (>= 1.2, < 3)
|
14
13
|
git (1.3.0)
|
15
|
-
github_api (0.
|
16
|
-
addressable (~> 2.
|
17
|
-
descendants_tracker (~> 0.0.
|
14
|
+
github_api (0.16.0)
|
15
|
+
addressable (~> 2.4.0)
|
16
|
+
descendants_tracker (~> 0.0.4)
|
18
17
|
faraday (~> 0.8, < 0.10)
|
19
|
-
hashie (>=
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
jeweler (2.3.2)
|
18
|
+
hashie (>= 3.4)
|
19
|
+
mime-types (>= 1.16, < 3.0)
|
20
|
+
oauth2 (~> 1.0)
|
21
|
+
hashie (3.5.7)
|
22
|
+
highline (1.7.10)
|
23
|
+
jeweler (2.3.9)
|
26
24
|
builder
|
27
|
-
bundler
|
25
|
+
bundler
|
28
26
|
git (>= 1.2.5)
|
29
|
-
github_api (~> 0.
|
27
|
+
github_api (~> 0.16.0)
|
30
28
|
highline (>= 1.6.15)
|
31
29
|
nokogiri (>= 1.5.10)
|
32
|
-
psych
|
30
|
+
psych
|
33
31
|
rake
|
34
32
|
rdoc
|
35
33
|
semver2
|
36
34
|
json (2.0.3)
|
37
35
|
jwt (1.5.6)
|
38
|
-
|
36
|
+
mime-types (2.99.3)
|
37
|
+
mini_portile2 (2.3.0)
|
39
38
|
minitest (5.0.4)
|
40
|
-
multi_json (1.
|
39
|
+
multi_json (1.13.1)
|
41
40
|
multi_xml (0.6.0)
|
42
41
|
multipart-post (2.0.0)
|
43
|
-
nokogiri (1.
|
44
|
-
mini_portile2 (~> 2.
|
45
|
-
oauth2 (1.
|
46
|
-
faraday (>= 0.8, < 0.
|
42
|
+
nokogiri (1.8.2)
|
43
|
+
mini_portile2 (~> 2.3.0)
|
44
|
+
oauth2 (1.4.0)
|
45
|
+
faraday (>= 0.8, < 0.13)
|
47
46
|
jwt (~> 1.0)
|
48
47
|
multi_json (~> 1.3)
|
49
48
|
multi_xml (~> 0.5)
|
50
49
|
rack (>= 1.2, < 3)
|
51
|
-
psych (
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
rdoc (5.0.0)
|
50
|
+
psych (3.0.2)
|
51
|
+
rack (2.0.4)
|
52
|
+
rake (12.3.1)
|
53
|
+
rdoc (6.0.3)
|
56
54
|
redis (3.0.4)
|
57
55
|
redis-namespace (1.3.0)
|
58
56
|
redis (~> 3.0.0)
|
@@ -65,7 +63,7 @@ GEM
|
|
65
63
|
json
|
66
64
|
redis (>= 3.0)
|
67
65
|
redis-namespace
|
68
|
-
thread_safe (0.3.
|
66
|
+
thread_safe (0.3.6)
|
69
67
|
timers (1.1.0)
|
70
68
|
|
71
69
|
PLATFORMS
|
@@ -80,4 +78,4 @@ DEPENDENCIES
|
|
80
78
|
sidekiq
|
81
79
|
|
82
80
|
BUNDLED WITH
|
83
|
-
1.
|
81
|
+
1.16.1
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.3.3
|
@@ -2,12 +2,27 @@ require 'sidekiq'
|
|
2
2
|
require 'raven/integrations/sidekiq'
|
3
3
|
|
4
4
|
module SidekiqMeteredExceptions
|
5
|
-
class MeteredRavenErrorHandler < ::Raven::
|
6
|
-
def call(ex,
|
7
|
-
|
5
|
+
class MeteredRavenErrorHandler < ::Raven::SidekiqErrorHandler
|
6
|
+
def call(ex, original_context)
|
7
|
+
::Rails.logger.debug("MeteredRavenErrorHandler -- Error on Sidekiq job. Exception: #{ex.inspect} - Context: #{original_context.inspect}")
|
8
8
|
|
9
|
-
|
10
|
-
|
9
|
+
# symbolize keys so we don't have to worry about strings vs. symbols
|
10
|
+
context = original_context.deep_symbolize_keys
|
11
|
+
|
12
|
+
# If the job context has a `retry_count` key, it tells us how many times the job has been REtried so far.
|
13
|
+
# If it lacks this key, it has never been retried; this is the first attempt.
|
14
|
+
retry_count = (context[:retry_count] || (context[:job] && context[:job][:retry_count])).try(:to_i) || 0
|
15
|
+
|
16
|
+
# Is this a retryable job?
|
17
|
+
is_retryable = context[:retry] || (context[:job] && context[:job][:retry])
|
18
|
+
|
19
|
+
# We notify if this job has been retried at least once.
|
20
|
+
# Someday we plan to make this number configurable.
|
21
|
+
# If this isn't a retryable job, we notify even if this is the first attempt, because there will not be more attempts.
|
22
|
+
if retry_count > 0 || !is_retryable
|
23
|
+
::Rails.logger.debug("MeteredRavenErrorHandler -- Current retry count: #{retry_count}. Notifying upstream...")
|
24
|
+
|
25
|
+
super(ex, original_context)
|
11
26
|
end
|
12
27
|
end
|
13
28
|
end
|
@@ -2,16 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: sidekiq_metered_exceptions 0.
|
5
|
+
# stub: sidekiq_metered_exceptions 0.3.3 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "sidekiq_metered_exceptions".freeze
|
9
|
-
s.version = "0.
|
9
|
+
s.version = "0.3.3"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["lib".freeze]
|
13
13
|
s.authors = ["Nathan Woodhull".freeze]
|
14
|
-
s.date = "
|
14
|
+
s.date = "2018-06-12"
|
15
15
|
s.description = "Some exceptions are transient, so notifying an admin is not useful.".freeze
|
16
16
|
s.email = "woodhull@gmail.com".freeze
|
17
17
|
s.extra_rdoc_files = [
|
@@ -36,7 +36,7 @@ Gem::Specification.new do |s|
|
|
36
36
|
]
|
37
37
|
s.homepage = "http://github.com/woodhull/sidekiq_metered_exceptions".freeze
|
38
38
|
s.licenses = ["MIT".freeze]
|
39
|
-
s.rubygems_version = "2.6.
|
39
|
+
s.rubygems_version = "2.6.12".freeze
|
40
40
|
s.summary = "Only propagate sidekiq exceptions that have already been retried once.".freeze
|
41
41
|
|
42
42
|
if s.respond_to? :specification_version then
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sidekiq_metered_exceptions
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nathan Woodhull
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-06-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sidekiq
|
@@ -136,7 +136,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
136
136
|
version: '0'
|
137
137
|
requirements: []
|
138
138
|
rubyforge_project:
|
139
|
-
rubygems_version: 2.6.
|
139
|
+
rubygems_version: 2.6.12
|
140
140
|
signing_key:
|
141
141
|
specification_version: 4
|
142
142
|
summary: Only propagate sidekiq exceptions that have already been retried once.
|