rollbar 2.7.0 → 2.7.1
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/CHANGELOG.md +7 -0
- data/README.md +10 -8
- data/lib/generators/rollbar/templates/initializer.rb +7 -0
- data/lib/rollbar.rb +1 -1
- data/lib/rollbar/util.rb +5 -2
- data/lib/rollbar/version.rb +1 -1
- data/spec/rollbar/util_spec.rb +19 -0
- data/spec/rollbar_spec.rb +9 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 307192963be4a3aefcd14f135c284089329768e8
|
4
|
+
data.tar.gz: 827eab30ef25e8da4c2ad4befcd48f6e9d142794
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fa47e8350d65964e7077556ec9c5930ae429850ce83a8ca945dd57415429c8c800f7617d99b440e2596e01e7d0613b72f31b0d40f9a1341ffc75dec625ae9327
|
7
|
+
data.tar.gz: 313592eef5826b4f7bb9674848b28d30b2e366fd4ad580b5a1478fb18d118ff9f49a6ad5d54bb349adc80794460ae8ae239b2e856d4680f9cd17921625c47a06
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
+
## 2.7.1
|
4
|
+
|
5
|
+
- Suggest using ROLLBAR_ENV for staging apps. See [#353](https://github.com/rollbar/rollbar-gem/pull/353).
|
6
|
+
- Fix Rollbar::Util.deep_merge so it has default values for arguments. See [#362](https://github.com/rollbar/rollbar-gem/pull/362).
|
7
|
+
- Ignore exception cause when it's not another exception. See [#357](https://github.com/rollbar/rollbar-gem/pull/357).
|
8
|
+
|
9
|
+
|
3
10
|
## 2.7.0
|
4
11
|
|
5
12
|
- Delayed job integration fix. See [#355](https://github.com/rollbar/rollbar-gem/pull/355).
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Rollbar notifier for Ruby [](https://travis-ci.org/rollbar/rollbar-gem/branches)
|
2
2
|
|
3
3
|
<!-- RemoveNext -->
|
4
4
|
[Rollbar](https://rollbar.com) is an error tracking service for Ruby and other languages. The Rollbar service will alert you of problems with your code and help you understand them in a ways never possible before. We love it and we hope you will too.
|
@@ -12,13 +12,7 @@ This is the Ruby library for Rollbar. It will instrument many kinds of Ruby appl
|
|
12
12
|
Add this line to your application's Gemfile:
|
13
13
|
|
14
14
|
```ruby
|
15
|
-
gem 'rollbar', '~> 2.7.
|
16
|
-
```
|
17
|
-
|
18
|
-
If you are not using JRuby we suggest using [Oj](https://github.com/ohler55/oj) for JSON serialization. In order to install Oj you can add this line to your Gemfile:
|
19
|
-
|
20
|
-
```ruby
|
21
|
-
gem 'oj', '~> 2.12.14'
|
15
|
+
gem 'rollbar', '~> 2.7.1'
|
22
16
|
```
|
23
17
|
|
24
18
|
And then execute:
|
@@ -29,6 +23,14 @@ $ bundle install
|
|
29
23
|
$ gem install rollbar
|
30
24
|
```
|
31
25
|
|
26
|
+
Unless you are using JRuby, we suggest also installing [Oj](https://github.com/ohler55/oj) for JSON serialization. Add this line to your Gemfile:
|
27
|
+
|
28
|
+
```ruby
|
29
|
+
gem 'oj', '~> 2.12.14'
|
30
|
+
```
|
31
|
+
|
32
|
+
and then `bundle install` again.
|
33
|
+
|
32
34
|
### If using Rails
|
33
35
|
|
34
36
|
Run the following command from your Rails root:
|
@@ -56,4 +56,11 @@ Rollbar.configure do |config|
|
|
56
56
|
# config.use_sidekiq
|
57
57
|
# You can supply custom Sidekiq options:
|
58
58
|
# config.use_sidekiq 'queue' => 'default'
|
59
|
+
|
60
|
+
# If you run your staging application instance in production environment then
|
61
|
+
# you'll want to override the environment reported by `Rails.env` with an
|
62
|
+
# environment variable like this: `ROLLBAR_ENV=staging`. This is a recommended
|
63
|
+
# setup for Heroku. See:
|
64
|
+
# https://devcenter.heroku.com/articles/deploying-to-a-custom-rails-environment
|
65
|
+
config.environment = ENV['ROLLBAR_ENV'] || Rails.env
|
59
66
|
end
|
data/lib/rollbar.rb
CHANGED
@@ -442,7 +442,7 @@ module Rollbar
|
|
442
442
|
traces = [trace_data(exception)]
|
443
443
|
visited = [exception]
|
444
444
|
|
445
|
-
while exception.respond_to?(:cause) && (cause = exception.cause) && !visited.include?(cause)
|
445
|
+
while exception.respond_to?(:cause) && (cause = exception.cause) && cause.is_a?(Exception) && !visited.include?(cause)
|
446
446
|
traces << trace_data(cause)
|
447
447
|
visited << cause
|
448
448
|
exception = cause
|
data/lib/rollbar/util.rb
CHANGED
@@ -66,10 +66,13 @@ module Rollbar
|
|
66
66
|
end
|
67
67
|
|
68
68
|
def self.deep_merge(hash1, hash2)
|
69
|
+
hash1 ||= {}
|
70
|
+
hash2 ||= {}
|
71
|
+
|
69
72
|
hash2.each_key do |k|
|
70
|
-
if hash1[k].is_a?
|
73
|
+
if hash1[k].is_a?(::Hash) && hash2[k].is_a?(::Hash)
|
71
74
|
hash1[k] = deep_merge(hash1[k], hash2[k])
|
72
|
-
elsif hash1[k].is_a?
|
75
|
+
elsif hash1[k].is_a?(Array) && hash2[k].is_a?(Array)
|
73
76
|
hash1[k] += deep_copy(hash2[k])
|
74
77
|
elsif hash2[k]
|
75
78
|
hash1[k] = deep_copy(hash2[k])
|
data/lib/rollbar/version.rb
CHANGED
@@ -0,0 +1,19 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
require 'rollbar/util'
|
4
|
+
|
5
|
+
describe Rollbar::Util do
|
6
|
+
describe '.deep_merge' do
|
7
|
+
context 'with nil arguments' do
|
8
|
+
let(:data) do
|
9
|
+
{ :foo => :bar }
|
10
|
+
end
|
11
|
+
|
12
|
+
it 'doesnt fail and returns same hash' do
|
13
|
+
result = Rollbar::Util.deep_merge(nil, data)
|
14
|
+
|
15
|
+
expect(result).to be_eql(data)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/spec/rollbar_spec.rb
CHANGED
@@ -2,7 +2,6 @@
|
|
2
2
|
|
3
3
|
require 'logger'
|
4
4
|
require 'socket'
|
5
|
-
require 'spec_helper'
|
6
5
|
require 'girl_friday'
|
7
6
|
require 'redis'
|
8
7
|
require 'active_support/core_ext/object'
|
@@ -14,6 +13,8 @@ begin
|
|
14
13
|
rescue LoadError
|
15
14
|
end
|
16
15
|
|
16
|
+
require 'spec_helper'
|
17
|
+
|
17
18
|
describe Rollbar do
|
18
19
|
let(:notifier) { Rollbar.notifier }
|
19
20
|
before do
|
@@ -646,6 +647,13 @@ describe Rollbar do
|
|
646
647
|
chain[1][:exception][:message].should match(/the cause/)
|
647
648
|
end
|
648
649
|
|
650
|
+
it 'ignores the cause when it is not an Exception' do
|
651
|
+
exception_with_custom_cause = Exception.new('custom cause')
|
652
|
+
allow(exception_with_custom_cause).to receive(:cause) { "Foo" }
|
653
|
+
body = notifier.send(:build_payload_body_exception, message, exception_with_custom_cause, extra)
|
654
|
+
body[:trace].should_not be_nil
|
655
|
+
end
|
656
|
+
|
649
657
|
context 'with cyclic nested exceptions' do
|
650
658
|
let(:exception1) { Exception.new('exception1') }
|
651
659
|
let(:exception2) { Exception.new('exception2') }
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rollbar
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.7.
|
4
|
+
version: 2.7.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rollbar, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-12-
|
11
|
+
date: 2015-12-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -371,6 +371,7 @@ files:
|
|
371
371
|
- spec/rollbar/truncation/strings_strategy_spec.rb
|
372
372
|
- spec/rollbar/truncation_spec.rb
|
373
373
|
- spec/rollbar/util/hash_spec.rb
|
374
|
+
- spec/rollbar/util_spec.rb
|
374
375
|
- spec/rollbar_bc_spec.rb
|
375
376
|
- spec/rollbar_spec.rb
|
376
377
|
- spec/spec_helper.rb
|
@@ -491,6 +492,7 @@ test_files:
|
|
491
492
|
- spec/rollbar/truncation/strings_strategy_spec.rb
|
492
493
|
- spec/rollbar/truncation_spec.rb
|
493
494
|
- spec/rollbar/util/hash_spec.rb
|
495
|
+
- spec/rollbar/util_spec.rb
|
494
496
|
- spec/rollbar_bc_spec.rb
|
495
497
|
- spec/rollbar_spec.rb
|
496
498
|
- spec/spec_helper.rb
|