Module: Pgbus::Web::PayloadFilter
- Defined in:
- lib/pgbus/web/payload_filter.rb
Constant Summary collapse
- DEFAULT_FILTER_PATTERNS =
[ :password, :passphrase, :secret, :token, :authorization, :api_key, :private_key, :access_key, :secret_key, /(_|-)key$/ ].freeze
- FILTERED =
"[FILTERED]"
Class Method Summary collapse
Class Method Details
.filter(value) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/pgbus/web/payload_filter.rb', line 18 def filter(value) return value unless Pgbus.configuration.dashboard_filter_sensitive case value when Hash parameter_filter.filter(value) when Array value.map { |element| filter(element) } else value end end |
.filter_json(value) ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/pgbus/web/payload_filter.rb', line 31 def filter_json(value) return value unless Pgbus.configuration.dashboard_filter_sensitive case value when nil then nil when Hash, Array JSON.generate(filter(value)) when String parsed = JSON.parse(value) JSON.generate(filter(parsed)) else value end rescue JSON::ParserError value end |