airbrake 9.2.2 → 9.4.0

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
  SHA1:
3
- metadata.gz: 2c238934628051f11250e289d3c226c8480bd3ae
4
- data.tar.gz: fcfd36d25c4280006f64c049422c968b6ca24cae
3
+ metadata.gz: 6231106842eab5861b73b11301a7fa14858cf7da
4
+ data.tar.gz: 4441123b54f2c50fff4c014eb90b2da35046bbbe
5
5
  SHA512:
6
- metadata.gz: 1f4b6f4e2aa13eeb7d3cedfc4ed912893f9c0bafa88053aefb0a8d1794cc301ac88bc401c5a443e5185919e25a2739afde708d925fd1301703054066e67ed584
7
- data.tar.gz: 891f4da4c53e22dd462db6e92ccca26dd83d956c7fc524dbad83d9d2be07dd583c639d4f26857c659ee5c5ec7531592a5be91b45b8394f322c71e7080dfbd64c
6
+ metadata.gz: d598e73a591a249bae78ef19d790787b25379ded02bc42e8f7e85099eb8c96946caa44c74d44691697393e61c37c1cecb2ead27f41184b7639750787c06d1253
7
+ data.tar.gz: 936f8650bcb5cbacf86b29e5782341b08225faac7cda727a3dbe01a10dffff76e824033e6a8bdbf79f9f6a5227ccb297b8e22acf2e5b2ea517ae45e84945f942
@@ -33,15 +33,15 @@ module Airbrake
33
33
  rescue Exception => ex # rubocop:disable Lint/RescueException
34
34
  notify_airbrake(ex)
35
35
  raise ex
36
- ensure
37
- # Clear routes for the next request.
38
- RequestStore.clear
39
36
  end
40
37
 
41
38
  exception = framework_exception(env)
42
39
  notify_airbrake(exception) if exception
43
40
 
44
41
  response
42
+ ensure
43
+ # Clear routes for the next request.
44
+ RequestStore.clear
45
45
  end
46
46
 
47
47
  private
@@ -13,6 +13,10 @@ module Airbrake
13
13
  DEFAULT_MAX_RETRY_ATTEMPTS = ::Sidekiq::JobRetry::DEFAULT_MAX_RETRY_ATTEMPTS
14
14
  end
15
15
 
16
+ def initialize(max_retries: nil)
17
+ @max_retries = max_retries
18
+ end
19
+
16
20
  def call(notice)
17
21
  job = notice[:params][:job]
18
22
 
@@ -25,11 +29,14 @@ module Airbrake
25
29
  return false unless job && job['retry']
26
30
 
27
31
  max_attempts = max_attempts_for(job)
28
- job['retry_count'] < max_attempts
32
+ retry_count = (job['retry_count'] || -1) + 1
33
+ retry_count < max_attempts
29
34
  end
30
35
 
31
36
  def max_attempts_for(job)
32
- if job['retry'].is_a?(Integer)
37
+ if @max_retries
38
+ @max_retries
39
+ elsif job['retry'].is_a?(Integer)
33
40
  job['retry']
34
41
  else
35
42
  max_retries
@@ -1,5 +1,5 @@
1
1
  # We use Semantic Versioning v2.0.0
2
2
  # More information: http://semver.org/
3
3
  module Airbrake
4
- AIRBRAKE_VERSION = '9.2.2'.freeze
4
+ AIRBRAKE_VERSION = '9.4.0'.freeze
5
5
  end
@@ -33,7 +33,15 @@ Airbrake.configure do |c|
33
33
  # By default, Airbrake Ruby outputs to STDOUT. In Rails apps it makes sense to
34
34
  # use the Rails' logger.
35
35
  # https://github.com/airbrake/airbrake-ruby#logger
36
- c.logger = Rails.logger
36
+ c.logger =
37
+ if ENV['RAILS_LOG_TO_STDOUT'].present?
38
+ Logger.new(STDOUT, level: Rails.logger.level)
39
+ else
40
+ Logger.new(
41
+ Rails.root.join('log', 'airbrake.log'),
42
+ level: Rails.logger.level
43
+ )
44
+ end
37
45
 
38
46
  # Configures the environment the application is running in. Helps the Airbrake
39
47
  # dashboard to distinguish between exceptions occurring in different
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: airbrake
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.2.2
4
+ version: 9.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Airbrake Technologies, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-10 00:00:00.000000000 Z
11
+ date: 2019-07-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: airbrake-ruby
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '4.4'
19
+ version: '4.5'
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: '4.4'
26
+ version: '4.5'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rspec
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -393,7 +393,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
393
393
  version: '0'
394
394
  requirements: []
395
395
  rubyforge_project:
396
- rubygems_version: 2.6.13
396
+ rubygems_version: 2.6.14.4
397
397
  signing_key:
398
398
  specification_version: 4
399
399
  summary: Airbrake is an online tool that provides robust exception tracking in any