Class: RailsExceptionHandler::Parser
- Inherits:
-
Object
- Object
- RailsExceptionHandler::Parser
- Defined in:
- lib/rails_exception_handler/parser.rb
Instance Method Summary collapse
- #ignore? ⇒ Boolean
-
#initialize(exception, request, controller) ⇒ Parser
constructor
A new instance of Parser.
- #relevant_info ⇒ Object
- #routing_error? ⇒ Boolean
Constructor Details
#initialize(exception, request, controller) ⇒ Parser
Returns a new instance of Parser.
2 3 4 5 6 |
# File 'lib/rails_exception_handler/parser.rb', line 2 def initialize(exception, request, controller) @exception = exception @request = request @controller = controller end |
Instance Method Details
#ignore? ⇒ Boolean
23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/rails_exception_handler/parser.rb', line 23 def ignore? filters = RailsExceptionHandler.configuration.filters filters.each do |filter| if(filter.class == Symbol) result = send("filter_#{filter}") elsif(filter.class == Hash) result = send("filter_#{filter.keys[0]}", filter.values[0]) else raise "RailsExceptionHandler: Unknown filter #{filter.inspect}" end return true if(result) end return false end |
#relevant_info ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/rails_exception_handler/parser.rb', line 8 def relevant_info info = {} info[:app_name] = Rails.application.class.parent_name info[:class_name] = @exception.class.to_s info[:message] = @exception.to_s info[:trace] = @exception.backtrace.join("\n") info[:target_url] = @request.url info[:referer_url] = @request.referer info[:params] = @request.params.inspect info[:user_agent] = @request.user_agent info[:user_info] = user_info info[:created_at] = Time.now return info end |
#routing_error? ⇒ Boolean
38 39 40 41 |
# File 'lib/rails_exception_handler/parser.rb', line 38 def routing_error? routing_errors = [ActionController::RoutingError, AbstractController::ActionNotFound, ActiveRecord::RecordNotFound] routing_errors.include?(@exception.class) end |