Module: Honeybadger::Util::RequestPayload
- Defined in:
- lib/honeybadger/util/request_payload.rb
Overview
Internal: Constructs/sanitizes request data for notices and traces.
Constant Summary collapse
- DEFAULTS =
Internal: default values to use for request data.
{ url: nil, component: nil, action: nil, params: {}.freeze, session: {}.freeze, cgi_data: {}.freeze }.freeze
- KEYS =
Internal: allowed keys.
DEFAULTS.keys.freeze
Class Method Summary collapse
Class Method Details
.build(opts = {}) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/honeybadger/util/request_payload.rb', line 20 def self.build(opts = {}) sanitizer = opts.fetch(:sanitizer) { Sanitizer.new } payload = DEFAULTS.dup KEYS.each do |key| next unless opts[key] payload[key] = sanitizer.sanitize(opts[key]) end payload[:session] = opts[:session][:data] if opts[:session] && opts[:session][:data] payload[:url] = sanitizer.filter_url(payload[:url]) if payload[:url] payload end |