Class: Bugsnag::Middleware::ClassifyError
- Inherits:
-
Object
- Object
- Bugsnag::Middleware::ClassifyError
- Defined in:
- lib/bugsnag/middleware/classify_error.rb
Overview
Sets the severity to info for low-importance errors
Constant Summary collapse
- INFO_CLASSES =
[ "AbstractController::ActionNotFound", "ActionController::InvalidAuthenticityToken", "ActionController::ParameterMissing", "ActionController::UnknownAction", "ActionController::UnknownFormat", "ActionController::UnknownHttpMethod", "ActionDispatch::Http::MimeNegotiation::InvalidType", "ActiveRecord::RecordNotFound", "CGI::Session::CookieStore::TamperedWithCookie", "Mongoid::Errors::DocumentNotFound", "SignalException", "SystemExit" ]
Instance Method Summary collapse
- #call(report) ⇒ Object
-
#initialize(bugsnag) ⇒ ClassifyError
constructor
A new instance of ClassifyError.
Constructor Details
#initialize(bugsnag) ⇒ ClassifyError
Returns a new instance of ClassifyError.
20 21 22 |
# File 'lib/bugsnag/middleware/classify_error.rb', line 20 def initialize(bugsnag) @bugsnag = bugsnag end |
Instance Method Details
#call(report) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/bugsnag/middleware/classify_error.rb', line 24 def call(report) report.raw_exceptions.each do |ex| ancestor_chain = ex.class.ancestors.select { |ancestor| ancestor.is_a?(Class) }.map { |ancestor| ancestor.to_s } INFO_CLASSES.each do |info_class| if ancestor_chain.include?(info_class) report.severity_reason = { :type => Bugsnag::Report::ERROR_CLASS, :attributes => { :errorClass => info_class } } report.severity = 'info' break end end end @bugsnag.call(report) end |