class GrapeLogging::Loggers::FilterParameters
Constants
- AD_PARAMS
Public Class Methods
new(filter_parameters = nil, replacement = nil, exceptions = %w(controller action format))
click to toggle source
# File lib/grape_logging/loggers/filter_parameters.rb, line 6 def initialize(filter_parameters = nil, replacement = nil, exceptions = %w(controller action format)) @filter_parameters = filter_parameters || (defined?(::Rails.application) ? ::Rails.application.config.filter_parameters : []) @replacement = replacement || '[FILTERED]' @exceptions = exceptions end
Public Instance Methods
parameters(request, _)
click to toggle source
# File lib/grape_logging/loggers/filter_parameters.rb, line 12 def parameters(request, _) { params: safe_parameters(request) } end
Private Instance Methods
clean_parameters(parameters)
click to toggle source
# File lib/grape_logging/loggers/filter_parameters.rb, line 31 def clean_parameters(parameters) parameter_filter.filter(parameters).reject{ |key, _value| @exceptions.include?(key) } end
parameter_filter()
click to toggle source
# File lib/grape_logging/loggers/filter_parameters.rb, line 18 def parameter_filter @parameter_filter ||= ParameterFilter.new(@replacement, @filter_parameters) end
safe_parameters(request)
click to toggle source
# File lib/grape_logging/loggers/filter_parameters.rb, line 22 def safe_parameters(request) # Now this logger can work also over Rails requests if request.params.empty? clean_parameters(request.env[AD_PARAMS] || {}) else clean_parameters(request.params) end end