sentry-sidekiq 5.4.2 → 5.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 53659362d3b216b6fecb61f4248e7f3fda05f4ee88c5f8c1806e8c803c8d00dc
4
- data.tar.gz: 6f31c87f55e00ecbe173c491a9f94b35599040f473bee8075211e9bd3c1d2318
3
+ metadata.gz: 2a74e240c74c160e6803e8943c2899a94742e5b045bec665ff8eb7f9f1ff24b3
4
+ data.tar.gz: 83c53553c74be876cbb5c8d9f70a8aa55dd1e25e068c3a9e4a7fbf389474eb9a
5
5
  SHA512:
6
- metadata.gz: 37a5e6593a7189eb0b183ea7f36b69c628f039573f9bf0b9b73de59966cbe52cf5aedb26489e3ec39c1a1a7bc56adf0c15724d8dd939ee8f97bdd19d7e4697a0
7
- data.tar.gz: 49253e2afe2bf91f25f4b3dfae74bd81b0d327050172c7926ef8520f89c46355ccaf284014dbc795743c819b5100d9f28c14dc410e3d3e05a33dbbd29ea985bc
6
+ metadata.gz: cda383f40aa3cb8fc416000503135a0f10f55a65f47ad23a567e24c900259af132dafb6bac6a77eef665299b5efbbca0f79f60ba4240ced47969d168447a5c6b
7
+ data.tar.gz: e9f10851a01c71e6ebf7b7402448fb7bad78db354056eac18f4de1ed94afba243fa69e6051892d300bb5a7eaf7c825c03f65156cdbedaa15e7c34377e5b4dc54
@@ -3,13 +3,15 @@ require 'sentry/sidekiq/context_filter'
3
3
  module Sentry
4
4
  module Sidekiq
5
5
  class ErrorHandler
6
+ WITH_SIDEKIQ_7 = ::Gem::Version.new(::Sidekiq::VERSION) >= ::Gem::Version.new("7.0")
7
+
6
8
  def call(ex, context)
7
9
  return unless Sentry.initialized?
8
10
 
9
11
  context_filter = Sentry::Sidekiq::ContextFilter.new(context)
10
12
 
11
13
  scope = Sentry.get_current_scope
12
- scope.set_transaction_name(context_filter.transaction_name) unless scope.transaction_name
14
+ scope.set_transaction_name(context_filter.transaction_name, source: :task) unless scope.transaction_name
13
15
 
14
16
  if Sentry.configuration.sidekiq.report_after_job_retries && retryable?(context)
15
17
  retry_count = context.dig(:job, "retry_count")
@@ -40,7 +42,13 @@ module Sentry
40
42
  when Integer
41
43
  limit
42
44
  when TrueClass
43
- ::Sidekiq.options[:max_retries] || 25
45
+ max_retries =
46
+ if WITH_SIDEKIQ_7
47
+ ::Sidekiq.default_configuration[:max_retries]
48
+ else
49
+ ::Sidekiq.options[:max_retries]
50
+ end
51
+ max_retries || 25
44
52
  else
45
53
  0
46
54
  end
@@ -3,6 +3,8 @@ require 'sentry/sidekiq/context_filter'
3
3
  module Sentry
4
4
  module Sidekiq
5
5
  class SentryContextServerMiddleware
6
+ OP_NAME = "queue.sidekiq".freeze
7
+
6
8
  def call(_worker, job, queue)
7
9
  return yield unless Sentry.initialized?
8
10
 
@@ -16,8 +18,8 @@ module Sentry
16
18
  scope.set_tags(queue: queue, jid: job["jid"])
17
19
  scope.set_tags(build_tags(job["tags"]))
18
20
  scope.set_contexts(sidekiq: job.merge("queue" => queue))
19
- scope.set_transaction_name(context_filter.transaction_name)
20
- transaction = start_transaction(scope.transaction_name, job["sentry_trace"])
21
+ scope.set_transaction_name(context_filter.transaction_name, source: :task)
22
+ transaction = start_transaction(scope, job["sentry_trace"])
21
23
  scope.set_span(transaction) if transaction
22
24
 
23
25
  begin
@@ -37,8 +39,8 @@ module Sentry
37
39
  Array(tags).each_with_object({}) { |name, tags_hash| tags_hash[:"sidekiq.#{name}"] = true }
38
40
  end
39
41
 
40
- def start_transaction(transaction_name, sentry_trace)
41
- options = { name: transaction_name, op: "sidekiq" }
42
+ def start_transaction(scope, sentry_trace)
43
+ options = { name: scope.transaction_name, source: scope.transaction_source, op: OP_NAME }
42
44
  transaction = Sentry::Transaction.from_sentry_trace(sentry_trace, **options) if sentry_trace
43
45
  Sentry.start_transaction(transaction: transaction, **options)
44
46
  end
@@ -1,5 +1,5 @@
1
1
  module Sentry
2
2
  module Sidekiq
3
- VERSION = "5.4.2"
3
+ VERSION = "5.6.0"
4
4
  end
5
5
  end
@@ -22,6 +22,6 @@ Gem::Specification.new do |spec|
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ["lib"]
24
24
 
25
- spec.add_dependency "sentry-ruby", "~> 5.4.2"
25
+ spec.add_dependency "sentry-ruby", "~> 5.6.0"
26
26
  spec.add_dependency "sidekiq", ">= 3.0"
27
27
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sentry-sidekiq
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.4.2
4
+ version: 5.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sentry Team
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-08-17 00:00:00.000000000 Z
11
+ date: 2022-11-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sentry-ruby
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 5.4.2
19
+ version: 5.6.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 5.4.2
26
+ version: 5.6.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: sidekiq
29
29
  requirement: !ruby/object:Gem::Requirement