pier_logging 0.3.2 → 0.3.3

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: 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