appsignal 2.11.0.alpha.2-java → 2.11.0.beta.1-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +3 -0
  3. data/.semaphore/semaphore.yml +37 -9
  4. data/CHANGELOG.md +10 -1
  5. data/build_matrix.yml +5 -1
  6. data/gemfiles/rails-4.2.gemfile +9 -2
  7. data/gemfiles/rails-5.0.gemfile +1 -0
  8. data/gemfiles/rails-5.1.gemfile +1 -0
  9. data/gemfiles/rails-5.2.gemfile +1 -0
  10. data/gemfiles/rails-6.0.gemfile +1 -0
  11. data/gemfiles/resque-1.gemfile +7 -0
  12. data/gemfiles/{resque.gemfile → resque-2.gemfile} +1 -1
  13. data/lib/appsignal/hooks.rb +2 -0
  14. data/lib/appsignal/hooks/active_job.rb +89 -0
  15. data/lib/appsignal/hooks/resque.rb +60 -0
  16. data/lib/appsignal/hooks/sidekiq.rb +16 -92
  17. data/lib/appsignal/integrations/que.rb +1 -1
  18. data/lib/appsignal/integrations/resque.rb +9 -12
  19. data/lib/appsignal/integrations/resque_active_job.rb +9 -32
  20. data/lib/appsignal/transaction.rb +10 -0
  21. data/lib/appsignal/utils/deprecation_message.rb +5 -1
  22. data/lib/appsignal/version.rb +1 -1
  23. data/spec/lib/appsignal/hooks/activejob_spec.rb +458 -0
  24. data/spec/lib/appsignal/hooks/resque_spec.rb +185 -0
  25. data/spec/lib/appsignal/hooks/sidekiq_spec.rb +215 -263
  26. data/spec/lib/appsignal/integrations/que_spec.rb +25 -6
  27. data/spec/lib/appsignal/integrations/resque_active_job_spec.rb +20 -179
  28. data/spec/lib/appsignal/integrations/resque_spec.rb +20 -85
  29. data/spec/lib/appsignal/probes/sidekiq_spec.rb +10 -7
  30. data/spec/lib/appsignal/transaction_spec.rb +5 -7
  31. data/spec/support/helpers/action_mailer_helpers.rb +25 -0
  32. data/spec/support/helpers/dependency_helper.rb +9 -2
  33. data/spec/support/helpers/transaction_helpers.rb +6 -0
  34. data/spec/support/stubs/sidekiq/api.rb +1 -1
  35. metadata +12 -3
@@ -0,0 +1,25 @@
1
+ module ActionMailerHelpers
2
+ def perform_action_mailer(mailer, method, args = nil)
3
+ if DependencyHelper.rails_version >= Gem::Version.new("5.2.0")
4
+ case args
5
+ when Array
6
+ mailer.send(method, *args).deliver_later
7
+ when Hash
8
+ mailer.with(args).send(method).deliver_later
9
+ when NilClass
10
+ mailer.send(method).deliver_later
11
+ else
12
+ raise "Unknown scenario for arguments: #{args}"
13
+ end
14
+ else
15
+ # Rails 5.1 and lower
16
+ mailer_object =
17
+ if args
18
+ mailer.send(method, *args)
19
+ else
20
+ mailer.send(method)
21
+ end
22
+ mailer_object.deliver_later
23
+ end
24
+ end
25
+ end
@@ -1,6 +1,10 @@
1
1
  module DependencyHelper
2
2
  module_function
3
3
 
4
+ def ruby_version
5
+ Gem::Version.new(RUBY_VERSION)
6
+ end
7
+
4
8
  def running_jruby?
5
9
  defined?(RUBY_ENGINE) && RUBY_ENGINE == "jruby"
6
10
  end
@@ -10,8 +14,11 @@ module DependencyHelper
10
14
  end
11
15
 
12
16
  def rails6_present?
13
- rails_present? &&
14
- Gem.loaded_specs["rails"].version >= Gem::Version.new("6.0.0")
17
+ rails_present? && rails_version >= Gem::Version.new("6.0.0")
18
+ end
19
+
20
+ def rails_version
21
+ Gem.loaded_specs["rails"].version
15
22
  end
16
23
 
17
24
  def sequel_present?
@@ -44,6 +44,12 @@ module TransactionHelpers
44
44
  created_transactions.last
45
45
  end
46
46
 
47
+ # Set current transaction manually.
48
+ # Cleared by {clear_current_transaction!}
49
+ def set_current_transaction(transaction) # rubocop:disable Style/AccessorMethodName
50
+ Thread.current[:appsignal_transaction] = transaction
51
+ end
52
+
47
53
  # Use when {Appsignal::Transaction.clear_current_transaction!} is stubbed to
48
54
  # clear the current transaction on the current thread.
49
55
  def clear_current_transaction!
@@ -1,4 +1,4 @@
1
1
  module Sidekiq
2
- class API
2
+ class Stats
3
3
  end
4
4
  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: 2.11.0.alpha.2
4
+ version: 2.11.0.beta.1
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: 2020-07-02 00:00:00.000000000 Z
13
+ date: 2020-07-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rack
@@ -186,7 +186,8 @@ files:
186
186
  - gemfiles/rails-5.1.gemfile
187
187
  - gemfiles/rails-5.2.gemfile
188
188
  - gemfiles/rails-6.0.gemfile
189
- - gemfiles/resque.gemfile
189
+ - gemfiles/resque-1.gemfile
190
+ - gemfiles/resque-2.gemfile
190
191
  - gemfiles/sequel-435.gemfile
191
192
  - gemfiles/sequel.gemfile
192
193
  - gemfiles/sinatra.gemfile
@@ -220,6 +221,7 @@ files:
220
221
  - lib/appsignal/helpers/metrics.rb
221
222
  - lib/appsignal/hooks.rb
222
223
  - lib/appsignal/hooks/action_cable.rb
224
+ - lib/appsignal/hooks/active_job.rb
223
225
  - lib/appsignal/hooks/active_support_notifications.rb
224
226
  - lib/appsignal/hooks/celluloid.rb
225
227
  - lib/appsignal/hooks/data_mapper.rb
@@ -231,6 +233,7 @@ files:
231
233
  - lib/appsignal/hooks/que.rb
232
234
  - lib/appsignal/hooks/rake.rb
233
235
  - lib/appsignal/hooks/redis.rb
236
+ - lib/appsignal/hooks/resque.rb
234
237
  - lib/appsignal/hooks/sequel.rb
235
238
  - lib/appsignal/hooks/shoryuken.rb
236
239
  - lib/appsignal/hooks/sidekiq.rb
@@ -305,6 +308,7 @@ files:
305
308
  - spec/lib/appsignal/garbage_collection_profiler_spec.rb
306
309
  - spec/lib/appsignal/hooks/action_cable_spec.rb
307
310
  - spec/lib/appsignal/hooks/active_support_notifications_spec.rb
311
+ - spec/lib/appsignal/hooks/activejob_spec.rb
308
312
  - spec/lib/appsignal/hooks/celluloid_spec.rb
309
313
  - spec/lib/appsignal/hooks/data_mapper_spec.rb
310
314
  - spec/lib/appsignal/hooks/delayed_job_spec.rb
@@ -315,6 +319,7 @@ files:
315
319
  - spec/lib/appsignal/hooks/que_spec.rb
316
320
  - spec/lib/appsignal/hooks/rake_spec.rb
317
321
  - spec/lib/appsignal/hooks/redis_spec.rb
322
+ - spec/lib/appsignal/hooks/resque_spec.rb
318
323
  - spec/lib/appsignal/hooks/sequel_spec.rb
319
324
  - spec/lib/appsignal/hooks/shoryuken_spec.rb
320
325
  - spec/lib/appsignal/hooks/sidekiq_spec.rb
@@ -362,6 +367,7 @@ files:
362
367
  - spec/support/fixtures/projects/valid/config/environments/test.rb
363
368
  - spec/support/fixtures/projects/valid/log/.gitkeep
364
369
  - spec/support/fixtures/uploaded_file.txt
370
+ - spec/support/helpers/action_mailer_helpers.rb
365
371
  - spec/support/helpers/api_request_helper.rb
366
372
  - spec/support/helpers/cli_helpers.rb
367
373
  - spec/support/helpers/config_helpers.rb
@@ -449,6 +455,7 @@ test_files:
449
455
  - spec/lib/appsignal/garbage_collection_profiler_spec.rb
450
456
  - spec/lib/appsignal/hooks/action_cable_spec.rb
451
457
  - spec/lib/appsignal/hooks/active_support_notifications_spec.rb
458
+ - spec/lib/appsignal/hooks/activejob_spec.rb
452
459
  - spec/lib/appsignal/hooks/celluloid_spec.rb
453
460
  - spec/lib/appsignal/hooks/data_mapper_spec.rb
454
461
  - spec/lib/appsignal/hooks/delayed_job_spec.rb
@@ -459,6 +466,7 @@ test_files:
459
466
  - spec/lib/appsignal/hooks/que_spec.rb
460
467
  - spec/lib/appsignal/hooks/rake_spec.rb
461
468
  - spec/lib/appsignal/hooks/redis_spec.rb
469
+ - spec/lib/appsignal/hooks/resque_spec.rb
462
470
  - spec/lib/appsignal/hooks/sequel_spec.rb
463
471
  - spec/lib/appsignal/hooks/shoryuken_spec.rb
464
472
  - spec/lib/appsignal/hooks/sidekiq_spec.rb
@@ -506,6 +514,7 @@ test_files:
506
514
  - spec/support/fixtures/projects/valid/config/environments/test.rb
507
515
  - spec/support/fixtures/projects/valid/log/.gitkeep
508
516
  - spec/support/fixtures/uploaded_file.txt
517
+ - spec/support/helpers/action_mailer_helpers.rb
509
518
  - spec/support/helpers/api_request_helper.rb
510
519
  - spec/support/helpers/cli_helpers.rb
511
520
  - spec/support/helpers/config_helpers.rb