Module: Raven::Utils::ContextFilter

Defined in:
lib/raven/utils/context_filter.rb

Constant Summary collapse

ACTIVEJOB_RESERVED_PREFIX_REGEX =
/^_aj_/.freeze
HAS_GLOBALID =
const_defined?('GlobalID')

Class Method Summary collapse

Class Method Details

.filter_context(context) ⇒ Object

Once an ActiveJob is queued, ActiveRecord references get serialized into some internal reserved keys, such as _aj_globalid.

The problem is, if this job in turn gets queued back into ActiveJob with these magic reserved keys, ActiveJob will throw up and error. We want to capture these and mutate the keys so we can sanely report it.



14
15
16
17
18
19
20
21
22
23
# File 'lib/raven/utils/context_filter.rb', line 14

def filter_context(context)
  case context
  when Array
    context.map { |arg| filter_context(arg) }
  when Hash
    Hash[context.map { |key, value| filter_context_hash(key, value) }]
  else
    format_globalid(context)
  end
end