appsignal 4.5.2-java → 4.5.3-java

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: 06b4723348286e7d34cd22d6dd63acf5fa6c3c009fcedb02a063762445865f66
4
- data.tar.gz: cd669a754156ec1a8a2854efaa1e927397eae75d58f9df5e6c277e856711df91
3
+ metadata.gz: 3abe515c0089e470e9ecd226bd627eb55e36c47862a76be222b962c164f592a6
4
+ data.tar.gz: 432adbc22993a93cd5291ca9b1a3ce1ebf88b4853d2a046c845d3734c36da41e
5
5
  SHA512:
6
- metadata.gz: 483ea8070af1318b3a9d1a8c8344186ad776111dc35b67e9df73a558f9577828cbad1886f53c4aca36d565cd9d945f359024d97f7340a9f71fd9d39db25022d9
7
- data.tar.gz: 6edd7715a85f5ae40c7ff6679ad432c16811ad45dd3541f83392c194391178174db0987a9ffd47797e1138f4df4176b03021f20e9091d6bc84df44c36acefc78
6
+ metadata.gz: 342b37ee08c93991e37330c931b272d8516dd40ea680fe9cad5376a651ecfffa029d09bfd61f4e544dec3719cab897c1d4c0495bfd6648c54d7d70eba12eca09
7
+ data.tar.gz: f5fce054168bc831c6f387b103fffbc98cae683492d2effeb52c8cb1696c69fe47870c178e425c34cd4cb441a4e5f5ce4519ff36bffb3a07d49ed8fac0c4c7a1
data/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # AppSignal for Ruby gem Changelog
2
2
 
3
+ ## 4.5.3
4
+
5
+ _Published on 2025-03-06._
6
+
7
+ ### Changed
8
+
9
+ - Specify stricter Rack version requirement. The Ruby gem relies on the `Rack::Events` constant which was introduced in Rack 2. Update our version requirement to require Rack 2 or newer. (patch [19bdb0b3](https://github.com/appsignal/appsignal-ruby/commit/19bdb0b3914e93e9f7c7ffa3a1bad80d9f3d1520))
10
+
11
+ ### Fixed
12
+
13
+ - Fix the queue time reporting for Sidekiq 8 jobs. It would report high negative values for the queue time with Sidekiq 8. (patch [6fcc40e3](https://github.com/appsignal/appsignal-ruby/commit/6fcc40e31e8656cb84daa8bb5a0bea7a137ab089))
14
+
3
15
  ## 4.5.2
4
16
 
5
17
  _Published on 2025-02-24._
data/appsignal.gemspec CHANGED
@@ -57,7 +57,8 @@ Gem::Specification.new do |gem| # rubocop:disable Metrics/BlockLength
57
57
  }
58
58
 
59
59
  gem.add_dependency "logger"
60
- gem.add_dependency "rack"
60
+ # Needs 2.0+ because we rely on Rack::Events
61
+ gem.add_dependency "rack", ">= 2.0.0"
61
62
 
62
63
  gem.add_development_dependency "pry"
63
64
  gem.add_development_dependency "rake", ">= 12"
data/build_matrix.yml CHANGED
@@ -208,3 +208,11 @@ matrix:
208
208
  - gem: "webmachine2"
209
209
  - gem: "redis-4"
210
210
  - gem: "redis-5"
211
+ - gem: "sidekiq-7"
212
+ only:
213
+ ruby:
214
+ - "3.4.1"
215
+ - gem: "sidekiq-8"
216
+ only:
217
+ ruby:
218
+ - "3.4.1"
@@ -58,6 +58,12 @@ module Appsignal
58
58
  error_message failed_at jid retried_at retry wrapped
59
59
  ].freeze
60
60
 
61
+ def self.sidekiq8?
62
+ return false unless ::Sidekiq.respond_to?(:gem_version)
63
+
64
+ @sidekiq8 ||= ::Sidekiq.gem_version >= Gem::Version.new("8.0.0")
65
+ end
66
+
61
67
  def call(_worker, item, _queue, &block)
62
68
  job_status = nil
63
69
  transaction = Appsignal::Transaction.create(Appsignal::Transaction::BACKGROUND_JOB)
@@ -74,7 +80,14 @@ module Appsignal
74
80
  ensure
75
81
  if transaction
76
82
  transaction.add_params_if_nil { parse_arguments(item) }
77
- queue_start = (item["enqueued_at"].to_f * 1000.0).to_i # Convert seconds to milliseconds
83
+ enqueued_at = item["enqueued_at"]
84
+ queue_start =
85
+ if self.class.sidekiq8?
86
+ enqueued_at.to_i # Sidekiq 8 stores it as epoc milliseconds
87
+ else
88
+ # Convert seconds to milliseconds for Sidekiq 7 and older
89
+ (enqueued_at.to_f * 1000.0).to_i
90
+ end
78
91
  transaction.set_queue_start(queue_start)
79
92
  transaction.add_tags(:request_id => item["jid"])
80
93
  Appsignal::Transaction.complete_current! unless exception
@@ -143,8 +156,6 @@ module Appsignal
143
156
  safe_load(args[0], args) do |_, _, arg|
144
157
  arg
145
158
  end
146
- when "ActiveJob::QueueAdapters::SidekiqAdapter::JobWrapper"
147
- nil # Set in the ActiveJob integration
148
159
  else
149
160
  # Sidekiq Enterprise argument encryption.
150
161
  # More information: https://github.com/mperham/sidekiq/wiki/Ent-Encryption
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Appsignal
4
- VERSION = "4.5.2"
4
+ VERSION = "4.5.3"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appsignal
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.5.2
4
+ version: 4.5.3
5
5
  platform: java
6
6
  authors:
7
7
  - Robert Beekman
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2025-02-24 00:00:00.000000000 Z
13
+ date: 2025-03-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: logger
@@ -32,14 +32,14 @@ dependencies:
32
32
  requirements:
33
33
  - - ">="
34
34
  - !ruby/object:Gem::Version
35
- version: '0'
35
+ version: 2.0.0
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - ">="
41
41
  - !ruby/object:Gem::Version
42
- version: '0'
42
+ version: 2.0.0
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: pry
45
45
  requirement: !ruby/object:Gem::Requirement