sentry-sanitizer 0.1.1 → 0.1.2

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: 828e9c8127ee2cf145f56ddd014f1c35f4b4994696cd2b7672e7cd8729a994a4
4
- data.tar.gz: 2e26bb264dc53d196f9e601ec1372ea9b791c5c2391380147a3b7f04117c65db
3
+ metadata.gz: 04b5f5cd976e0d3946f7d1d8791b4d9c8530eebe09a772b78098ae335feffaf0
4
+ data.tar.gz: 84fa68c96490549641f44a0bee8e53a11a1ec25953cde17d39dea14e9462b852
5
5
  SHA512:
6
- metadata.gz: 596f541d0d381bc538f8f8129b2bd34186358f427eccfb9d72f96db140323d52b61dfcdc8d3ab3d43c78485c3cd9b2b85b2a30ed453b2c97e1a695674c010dfe
7
- data.tar.gz: adde04a80883da1e655715f40c7a05bf6abf8408ec8deecd2830927f37ca1a556ae148b8fd39251e65791a7ef2362daa8e0e720cd2da97e980384a35baba287b
6
+ metadata.gz: 8fcfba576d61cd2f0f57c46bdbdc1bde94ee09cda03e296ba501473668d4b482c0615309af6b78aab96b82fcdc0fd469f6cd34a51e8fc1facf77c83b98e98497
7
+ data.tar.gz: b3603c13482ab3f8bc6b780e836ec448337059d11754e5dc5a2855e97320d3b19846a6ff7865c25d9021704d3f9db7740e0aacf4820686a6fae7a966c2645549
@@ -29,8 +29,8 @@ module Sentry
29
29
  end
30
30
 
31
31
  def sanitize_request(request)
32
- request.data = sanitize_hash(request.data) if fields
33
- request.headers = sanitize_headers(request.headers) if http_headers
32
+ request.data = sanitize_hash(request.data) unless fields.size.zero?
33
+ request.headers = sanitize_headers(request.headers) unless http_headers.size.zero?
34
34
  request.cookies = sanitize_cookies(request.cookies) if cookies
35
35
  end
36
36
 
@@ -1,57 +1,14 @@
1
1
  require 'sentry/configuration'
2
2
  require 'sentry/sanitizer/cleaner'
3
+ require 'sentry/sanitizer/configuration_mixin'
3
4
 
4
5
  module Sentry
5
6
  # Monkey-patching Sentry::Configuration
6
7
  class Configuration
7
- # Allow adding multiple hooks for this extension
8
- def before_send=(value)
9
- unless value == false || value.respond_to?(:call)
10
- raise ArgumentError, "before_send must be callable (or false to disable)"
11
- end
12
-
13
- return value if value == false
14
-
15
- @before_send_hook_list ||= []
16
- @before_send_hook_list << value
17
-
18
- @before_send = ->(event, hint) {
19
- @before_send_hook_list.each do |hook|
20
- event = hook.call(event, hint)
21
- end
22
- }
23
- end
24
-
25
- def sanitize
26
- @sanitize ||= Sentry::Sanitizer::Configuration.new
27
- end
28
-
29
- def sanitize_fields=(fields)
30
- unless fields.is_a? Array
31
- raise ArgumentError, 'sanitize_fields must be array'
32
- end
33
-
34
- sanitize.fields = fields
35
- end
36
-
37
- def sanitize_http_headers=(headers)
38
- unless headers.is_a? Array
39
- raise ArgumentError, 'sanitize_http_headers must be array'
40
- end
41
-
42
- sanitize.http_headers = headers
43
- end
44
-
45
- def sanitize_cookies=(cookies)
46
- unless [TrueClass, FalseClass].include?(cookies.class)
47
- raise ArgumentError, 'sanitize_cookies must be boolean'
48
- end
49
-
50
- sanitize.cookies = cookies
51
- end
8
+ prepend Sentry::Sanitizer::ConfigurationMixin
52
9
 
53
10
  add_post_initialization_callback do
54
- self.before_send = Sentry::Sanitizer::Cleaner::HOOK if sanitize.configured?
11
+ self.before_send = Sentry::Sanitizer::Cleaner::HOOK
55
12
  end
56
13
  end
57
14
 
@@ -0,0 +1,51 @@
1
+ module Sentry
2
+ module Sanitizer
3
+ module ConfigurationMixin
4
+ # Allow adding multiple hooks for this extension
5
+ def before_send=(value)
6
+ unless value == false || value.respond_to?(:call)
7
+ raise ArgumentError, "before_send must be callable (or false to disable)"
8
+ end
9
+
10
+ return value if value == false
11
+
12
+ @before_send_hook_list ||= []
13
+ @before_send_hook_list << value
14
+
15
+ @before_send = ->(event, hint) {
16
+ @before_send_hook_list.each do |hook|
17
+ event = hook.call(event, hint)
18
+ end
19
+ }
20
+ end
21
+
22
+ def sanitize
23
+ @sanitize ||= Sentry::Sanitizer::Configuration.new
24
+ end
25
+
26
+ def sanitize_fields=(fields)
27
+ unless fields.is_a? Array
28
+ raise ArgumentError, 'sanitize_fields must be array'
29
+ end
30
+
31
+ sanitize.fields = fields
32
+ end
33
+
34
+ def sanitize_http_headers=(headers)
35
+ unless headers.is_a? Array
36
+ raise ArgumentError, 'sanitize_http_headers must be array'
37
+ end
38
+
39
+ sanitize.http_headers = headers
40
+ end
41
+
42
+ def sanitize_cookies=(cookies)
43
+ unless [TrueClass, FalseClass].include?(cookies.class)
44
+ raise ArgumentError, 'sanitize_cookies must be boolean'
45
+ end
46
+
47
+ sanitize.cookies = cookies
48
+ end
49
+ end
50
+ end
51
+ end
@@ -1,5 +1,5 @@
1
1
  module Sentry
2
2
  module Sanitizer
3
- VERSION = "0.1.1"
3
+ VERSION = "0.1.2"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sentry-sanitizer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Valentine Kiselev
@@ -87,6 +87,7 @@ files:
87
87
  - lib/sentry/sanitizer.rb
88
88
  - lib/sentry/sanitizer/cleaner.rb
89
89
  - lib/sentry/sanitizer/configuration.rb
90
+ - lib/sentry/sanitizer/configuration_mixin.rb
90
91
  - lib/sentry/sanitizer/version.rb
91
92
  - sentry-sanitizer.gemspec
92
93
  homepage: https://github.com/mrexox/sentry-sanitizer