rollbar 2.19.3 → 2.21.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 +4 -4
- data/.rubocop.yml +5 -0
- data/.travis.yml +42 -16
- data/Gemfile +31 -14
- data/data/rollbar.snippet.js +1 -1
- data/docs/configuration.md +9 -0
- data/gemfiles/rails30.gemfile +8 -10
- data/gemfiles/rails31.gemfile +8 -9
- data/gemfiles/rails32.gemfile +8 -9
- data/gemfiles/rails40.gemfile +8 -9
- data/gemfiles/rails41.gemfile +8 -9
- data/gemfiles/rails42.gemfile +8 -11
- data/gemfiles/rails50.gemfile +13 -12
- data/gemfiles/rails51.gemfile +13 -12
- data/gemfiles/rails52.gemfile +13 -12
- data/gemfiles/rails60.gemfile +67 -0
- data/lib/rails/rollbar_runner.rb +1 -1
- data/lib/rollbar/configuration.rb +11 -1
- data/lib/rollbar/item.rb +15 -6
- data/lib/rollbar/json.rb +2 -51
- data/lib/rollbar/language_support.rb +3 -19
- data/lib/rollbar/logger_proxy.rb +5 -1
- data/lib/rollbar/notifier.rb +23 -10
- data/lib/rollbar/plugins/basic_socket.rb +1 -1
- data/lib/rollbar/rake_tasks.rb +3 -147
- data/lib/rollbar/request_data_extractor.rb +3 -2
- data/lib/rollbar/rollbar_test.rb +147 -0
- data/lib/rollbar/scrubbers/params.rb +2 -2
- data/lib/rollbar/scrubbers/url.rb +0 -1
- data/lib/rollbar/truncation.rb +9 -2
- data/lib/rollbar/truncation/min_body_strategy.rb +2 -3
- data/lib/rollbar/truncation/remove_any_key_strategy.rb +123 -0
- data/lib/rollbar/truncation/remove_extra_strategy.rb +35 -0
- data/lib/rollbar/truncation/remove_request_strategy.rb +21 -0
- data/lib/rollbar/truncation/strings_strategy.rb +2 -3
- data/lib/rollbar/util.rb +2 -2
- data/lib/rollbar/util/hash.rb +15 -0
- data/lib/rollbar/version.rb +1 -1
- data/rollbar.gemspec +0 -2
- metadata +10 -21
- data/gemfiles/ruby_1_8_and_1_9_2.gemfile +0 -51
- data/lib/rollbar/json/default.rb +0 -11
- data/lib/rollbar/json/oj.rb +0 -16
@@ -0,0 +1,35 @@
|
|
1
|
+
require 'rollbar/util'
|
2
|
+
|
3
|
+
module Rollbar
|
4
|
+
module Truncation
|
5
|
+
class RemoveExtraStrategy
|
6
|
+
include ::Rollbar::Truncation::Mixin
|
7
|
+
|
8
|
+
def self.call(payload)
|
9
|
+
new.call(payload)
|
10
|
+
end
|
11
|
+
|
12
|
+
def call(payload)
|
13
|
+
body = payload['data']['body']
|
14
|
+
|
15
|
+
delete_message_extra(body)
|
16
|
+
delete_trace_chain_extra(body)
|
17
|
+
delete_trace_extra(body)
|
18
|
+
|
19
|
+
dump(payload)
|
20
|
+
end
|
21
|
+
|
22
|
+
def delete_message_extra(body)
|
23
|
+
body['message'].delete('extra') if body['message'] && body['message']['extra']
|
24
|
+
end
|
25
|
+
|
26
|
+
def delete_trace_chain_extra(body)
|
27
|
+
body['trace_chain'][0].delete('extra') if body['trace_chain'] && body['trace_chain'][0]['extra']
|
28
|
+
end
|
29
|
+
|
30
|
+
def delete_trace_extra(body)
|
31
|
+
body['trace'].delete('extra') if body['trace'] && body['trace']['extra']
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'rollbar/util'
|
2
|
+
|
3
|
+
module Rollbar
|
4
|
+
module Truncation
|
5
|
+
class RemoveRequestStrategy
|
6
|
+
include ::Rollbar::Truncation::Mixin
|
7
|
+
|
8
|
+
def self.call(payload)
|
9
|
+
new.call(payload)
|
10
|
+
end
|
11
|
+
|
12
|
+
def call(payload)
|
13
|
+
data = payload['data']
|
14
|
+
|
15
|
+
data.delete('request') if data['request']
|
16
|
+
|
17
|
+
dump(payload)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -14,13 +14,12 @@ module Rollbar
|
|
14
14
|
|
15
15
|
def call(payload)
|
16
16
|
result = nil
|
17
|
-
new_payload = Rollbar::Util.deep_copy(payload)
|
18
17
|
|
19
18
|
STRING_THRESHOLDS.each do |threshold|
|
20
19
|
truncate_proc = truncate_strings_proc(threshold)
|
21
20
|
|
22
|
-
::Rollbar::Util.iterate_and_update(
|
23
|
-
result = dump(
|
21
|
+
::Rollbar::Util.iterate_and_update(payload, truncate_proc)
|
22
|
+
result = dump(payload)
|
24
23
|
|
25
24
|
break unless truncate?(result)
|
26
25
|
end
|
data/lib/rollbar/util.rb
CHANGED
data/lib/rollbar/util/hash.rb
CHANGED
@@ -5,6 +5,7 @@ module Rollbar
|
|
5
5
|
return if seen[hash.object_id]
|
6
6
|
|
7
7
|
seen[hash.object_id] = true
|
8
|
+
replace_seen_children(hash, seen)
|
8
9
|
|
9
10
|
hash.reduce({}) do |h, (key, value)|
|
10
11
|
h[key.to_s] = map_value(value, :deep_stringify_keys, seen)
|
@@ -22,12 +23,26 @@ module Rollbar
|
|
22
23
|
thing
|
23
24
|
else
|
24
25
|
seen[thing.object_id] = true
|
26
|
+
replace_seen_children(thing, seen)
|
25
27
|
thing.map { |v| map_value(v, meth, seen) }
|
26
28
|
end
|
27
29
|
else
|
28
30
|
thing
|
29
31
|
end
|
30
32
|
end
|
33
|
+
|
34
|
+
def self.replace_seen_children(thing, seen)
|
35
|
+
case thing
|
36
|
+
when ::Hash
|
37
|
+
thing.keys.each do |key|
|
38
|
+
thing[key] = "removed circular reference: #{thing[key]}" if seen[thing[key].object_id]
|
39
|
+
end
|
40
|
+
when Array
|
41
|
+
thing.each_with_index do |_, i|
|
42
|
+
thing[i] = "removed circular reference: #{thing[i]}" if seen[thing[i].object_id]
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
31
46
|
end
|
32
47
|
end
|
33
48
|
end
|
data/lib/rollbar/version.rb
CHANGED
data/rollbar.gemspec
CHANGED
@@ -18,8 +18,6 @@ Gem::Specification.new do |gem|
|
|
18
18
|
gem.required_ruby_version = '>= 1.9.3'
|
19
19
|
gem.version = Rollbar::VERSION
|
20
20
|
|
21
|
-
gem.add_runtime_dependency 'multi_json'
|
22
|
-
|
23
21
|
if gem.respond_to?(:metadata)
|
24
22
|
gem.metadata['changelog_uri'] = 'https://github.com/rollbar/rollbar-gem/releases'
|
25
23
|
gem.metadata['source_code_uri'] = 'https://github.com/rollbar/rollbar-gem'
|
metadata
CHANGED
@@ -1,29 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rollbar
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.21.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rollbar, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
12
|
-
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: multi_json
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - ">="
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '0'
|
20
|
-
type: :runtime
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - ">="
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '0'
|
11
|
+
date: 2019-07-12 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
27
13
|
description: Easy and powerful exception tracking for Ruby
|
28
14
|
email:
|
29
15
|
- support@rollbar.com
|
@@ -59,7 +45,7 @@ files:
|
|
59
45
|
- gemfiles/rails50.gemfile
|
60
46
|
- gemfiles/rails51.gemfile
|
61
47
|
- gemfiles/rails52.gemfile
|
62
|
-
- gemfiles/
|
48
|
+
- gemfiles/rails60.gemfile
|
63
49
|
- lib/generators/rollbar/rollbar_generator.rb
|
64
50
|
- lib/generators/rollbar/templates/initializer.rb
|
65
51
|
- lib/rails/rollbar_runner.rb
|
@@ -88,8 +74,6 @@ files:
|
|
88
74
|
- lib/rollbar/item/locals.rb
|
89
75
|
- lib/rollbar/js.rb
|
90
76
|
- lib/rollbar/json.rb
|
91
|
-
- lib/rollbar/json/default.rb
|
92
|
-
- lib/rollbar/json/oj.rb
|
93
77
|
- lib/rollbar/language_support.rb
|
94
78
|
- lib/rollbar/lazy_store.rb
|
95
79
|
- lib/rollbar/logger.rb
|
@@ -128,6 +112,7 @@ files:
|
|
128
112
|
- lib/rollbar/rails.rb
|
129
113
|
- lib/rollbar/rake_tasks.rb
|
130
114
|
- lib/rollbar/request_data_extractor.rb
|
115
|
+
- lib/rollbar/rollbar_test.rb
|
131
116
|
- lib/rollbar/scrubbers.rb
|
132
117
|
- lib/rollbar/scrubbers/params.rb
|
133
118
|
- lib/rollbar/scrubbers/url.rb
|
@@ -136,6 +121,9 @@ files:
|
|
136
121
|
- lib/rollbar/truncation/min_body_strategy.rb
|
137
122
|
- lib/rollbar/truncation/mixin.rb
|
138
123
|
- lib/rollbar/truncation/raw_strategy.rb
|
124
|
+
- lib/rollbar/truncation/remove_any_key_strategy.rb
|
125
|
+
- lib/rollbar/truncation/remove_extra_strategy.rb
|
126
|
+
- lib/rollbar/truncation/remove_request_strategy.rb
|
139
127
|
- lib/rollbar/truncation/strings_strategy.rb
|
140
128
|
- lib/rollbar/util.rb
|
141
129
|
- lib/rollbar/util/hash.rb
|
@@ -169,7 +157,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
169
157
|
- !ruby/object:Gem::Version
|
170
158
|
version: '0'
|
171
159
|
requirements: []
|
172
|
-
|
160
|
+
rubyforge_project:
|
161
|
+
rubygems_version: 2.7.7
|
173
162
|
signing_key:
|
174
163
|
specification_version: 4
|
175
164
|
summary: Reports exceptions to Rollbar
|
@@ -1,51 +0,0 @@
|
|
1
|
-
require 'rubygems/version'
|
2
|
-
|
3
|
-
source 'https://rubygems.org'
|
4
|
-
|
5
|
-
is_jruby = defined?(JRUBY_VERSION) || (defined?(RUBY_ENGINE) && 'jruby' == RUBY_ENGINE)
|
6
|
-
|
7
|
-
gem 'appraisal', '= 1.0.2'
|
8
|
-
gem 'activerecord-jdbcsqlite3-adapter', :platform => :jruby
|
9
|
-
gem 'hitimes', '< 1.2.2'
|
10
|
-
gem 'jruby-openssl', :platform => :jruby
|
11
|
-
gem 'rails', '3.0.20'
|
12
|
-
gem 'rake', '< 11'
|
13
|
-
gem 'rspec-rails', '>= 2.14.0'
|
14
|
-
gem 'sqlite3', '< 1.4.0', :platform => [:ruby, :mswin, :mingw]
|
15
|
-
|
16
|
-
gem 'oj', '~> 2.12.14' unless is_jruby
|
17
|
-
if RUBY_VERSION > '1.8.7' && RUBY_VERSION < '2.2.2'
|
18
|
-
gem 'sidekiq', '>= 2.13.0', '< 5.0'
|
19
|
-
end
|
20
|
-
|
21
|
-
platforms :rbx do
|
22
|
-
gem 'minitest'
|
23
|
-
gem 'racc'
|
24
|
-
gem 'rubinius-developer_tools'
|
25
|
-
gem 'rubysl', '~> 2.0' unless RUBY_VERSION.start_with?('1')
|
26
|
-
end
|
27
|
-
|
28
|
-
if RUBY_VERSION.start_with?('1.9')
|
29
|
-
gem 'celluloid', '< 0.17.0'
|
30
|
-
gem 'sucker_punch', '~> 1.0'
|
31
|
-
elsif RUBY_VERSION.start_with?('2')
|
32
|
-
gem 'sucker_punch', '~> 2.0'
|
33
|
-
end
|
34
|
-
|
35
|
-
gem 'database_cleaner', '~> 1.0.0'
|
36
|
-
gem 'delayed_job', '4.1.3', :require => false
|
37
|
-
gem 'genspec', '= 0.2.8'
|
38
|
-
gem 'girl_friday', '>= 0.11.1'
|
39
|
-
gem 'redis', '< 3.3.5'
|
40
|
-
gem 'resque', '< 2.0.0'
|
41
|
-
gem 'sinatra'
|
42
|
-
|
43
|
-
ruby_version = RUBY_VERSION.dup
|
44
|
-
|
45
|
-
if Gem::Version.new(ruby_version) < Gem::Version.new('2.0')
|
46
|
-
gem 'mime-types', '< 3.0'
|
47
|
-
end
|
48
|
-
|
49
|
-
gem 'capistrano', '<= 3.4.1', :require => false
|
50
|
-
|
51
|
-
gemspec :path => '../'
|
data/lib/rollbar/json/default.rb
DELETED