pier_logging 0.3.2 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f3b5d51eccb3353d9b1e898eb5c6f6d5d14dedcb183df51c7ed6300554e702f9
4
- data.tar.gz: 55a389c152833b3b94889af6fecaddc73682d33a5b48ac495fdf414f7e8886fe
3
+ metadata.gz: a55ccf237c0b0f40cdc5a97c3b1409112de8343a8b1070f1b70d814ef4ed4dad
4
+ data.tar.gz: acd0969b17612d4f42d1c8229699c5176e2aa8ebfdf13a5fd8c07b64b94602d3
5
5
  SHA512:
6
- metadata.gz: 1246e42cf2aa2632506cb52aa90159998582f80ed89dda9915834abbff04f726d84fcd819c99dcf9cc0a73d56db03ee0ba597ba29fafa547028ab3f52f75e1b5
7
- data.tar.gz: a4d3294e81e52f535a08f8fe883efdcf93acc8f98d27e12c879290db862dcb748458adadb4e7541b5cafcded08e99b74a681d820106a8c7dc9567260124ea2b0
6
+ metadata.gz: 56f1b5ca14007773f0604a3bf8720f81f5950892120e260a9a7c6a9231680edf4ece11c5702714e29a07ccae6c9490d8b406a992c78af8e6c1e85a887fa05deb
7
+ data.tar.gz: 79c17490ba3109bdbce3a06dd8fa45f92b6537a350e274273d5856208b99f878e9d085d4d194f7c8b62490af5b051b568d1a9eb74552993bb55c0962815a92d0
data/lib/pier_logging.rb CHANGED
@@ -54,13 +54,15 @@ module PierLogging
54
54
  end
55
55
 
56
56
  class RequestLoggerConfiguration
57
- attr_reader :enabled, :user_info_getter, :hide_response_body_for_paths,
58
- :log_response, :hide_request_headers, :correlation_id_getter
57
+ attr_reader :enabled, :user_info_getter, :hide_request_body_for_paths, :hide_response_body_for_paths,
58
+ :log_request_body, :log_response, :hide_request_headers, :correlation_id_getter
59
59
 
60
60
  def initialize
61
61
  @user_info_getter = ->(_ = nil) { nil }
62
62
  @enabled = false
63
+ @hide_request_body_for_paths = nil
63
64
  @hide_response_body_for_paths = nil
65
+ @log_request_body = true
64
66
  @log_response = true
65
67
  @hide_request_headers = nil
66
68
  @correlation_id_getter = ->(_ = nil, _ = nil) { nil }
@@ -71,11 +73,24 @@ module PierLogging
71
73
  @user_info_getter = proc
72
74
  end
73
75
 
76
+ def log_request_body=(log_request_body)
77
+ raise ArgumentError, "Config 'log_request_body' must be a 'boolean'" unless !!log_request_body == log_request_body
78
+ @log_request_body = log_request_body
79
+ end
80
+
74
81
  def log_response=(log_response)
75
82
  raise ArgumentError, "Config 'log_response' must be a 'boolean'" unless !!log_response == log_response
76
83
  @log_response = log_response
77
84
  end
78
85
 
86
+ def hide_request_body_for_paths=(hide_request_body_for_paths)
87
+ unless (hide_request_body_for_paths.is_a? Array) && (hide_request_body_for_paths.all?{|item| item.is_a? Regexp})
88
+ raise ArgumentError, "Config 'hide_request_body_for_paths' must be an 'Array of Regexps'"
89
+ end
90
+
91
+ @hide_request_body_for_paths = hide_request_body_for_paths
92
+ end
93
+
79
94
  def hide_response_body_for_paths=(hide_response_body_for_paths)
80
95
  unless (hide_response_body_for_paths.is_a? Array) && (hide_response_body_for_paths.all?{|item| item.is_a? Regexp})
81
96
  raise ArgumentError, "Config 'hide_response_body_for_paths' must be an 'Array of Regexps'"
@@ -57,7 +57,7 @@ module PierLogging
57
57
  headers: request_headers,
58
58
  href: request.url,
59
59
  query_string: request.query_string,
60
- body: parse_body(request.body)
60
+ body: request_body(request.path, request.body)
61
61
  },
62
62
  response: {
63
63
  status: status,
@@ -83,11 +83,20 @@ module PierLogging
83
83
  headers
84
84
  end
85
85
 
86
+ def request_body(request_path, body)
87
+ return nil unless PierLogging.request_logger_configuration.log_request_body
88
+
89
+ hide_request_body_for_paths = PierLogging.request_logger_configuration.hide_request_body_for_paths
90
+ return nil if hide_request_body_for_paths&.any?{ |path|request_path =~ path }
91
+
92
+ parse_body(body)
93
+ end
94
+
86
95
  def response_body(request_path, body)
87
96
  return nil unless PierLogging.request_logger_configuration.log_response
88
97
 
89
98
  hide_response_body_for_paths = PierLogging.request_logger_configuration.hide_response_body_for_paths
90
- return nil if hide_response_body_for_paths && hide_response_body_for_paths.any?{ |path|request_path =~ path }
99
+ return nil if hide_response_body_for_paths&.any?{ |path|request_path =~ path }
91
100
 
92
101
  parse_body(body)
93
102
  end
@@ -1,3 +1,3 @@
1
1
  module PierLogging
2
- VERSION = "0.3.2"
2
+ VERSION = "0.3.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pier_logging
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mauricio Banduk