class Honeybadger::Plugins::Rails::ErrorSubscriber
def self.report(exception, handled:, severity:, context: {}, source: nil)
def self.report(exception, handled:, severity:, context: {}, source: nil) # We only report unhandled errors (`Rails.error.handle`) # Unhandled errors will be caught by our integrations (eg middleware), which have richer context return unless handled return if source_ignored?(source) tags = ["severity:#{severity}", "handled:#{handled}"] tags << "source:#{source}" if source Honeybadger.notify(exception, context: context, tags: tags) end
def self.source_ignored?(source)
def self.source_ignored?(source) source && ::Honeybadger.config[:'rails.subscriber_ignore_sources'].any? do |ignored_source| ignored_source.is_a?(Regexp) ? ignored_source.match?(source) : (ignored_source == source) end end