aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_dispatch
diff options
context:
space:
mode:
authorAlberto Fernández Capel <alberto.fernandez-capel@overleaf.com>2018-01-04 11:27:14 +0000
committerAlberto F. Capel <afcapel@gmail.com>2019-05-28 20:39:10 +0100
commitc8f4c53d55762010496cf801cf1ec726e35d75df (patch)
tree2d1231b2bfb15d3a80c6b5ef11e7712288f5f270 /actionpack/lib/action_dispatch
parentf47be7bd96827af9f0b9b165666c6626cefc008f (diff)
downloadrails-c8f4c53d55762010496cf801cf1ec726e35d75df.tar.gz
rails-c8f4c53d55762010496cf801cf1ec726e35d75df.tar.bz2
rails-c8f4c53d55762010496cf801cf1ec726e35d75df.zip
Reduce log noise handling ActionController::RoutingErrors
Each time a missing route is hit 32 lines of internal rails traces are written to the log. This is overly verbose and doesn't offer any actionable information to the user. With this change we'll still write an error message showing the route error but the trace will be omitted.
Diffstat (limited to 'actionpack/lib/action_dispatch')
-rw-r--r--actionpack/lib/action_dispatch/middleware/debug_exceptions.rb4
-rw-r--r--actionpack/lib/action_dispatch/middleware/exception_wrapper.rb6
2 files changed, 7 insertions, 3 deletions
diff --git a/actionpack/lib/action_dispatch/middleware/debug_exceptions.rb b/actionpack/lib/action_dispatch/middleware/debug_exceptions.rb
index 59113e13f4..6435947434 100644
--- a/actionpack/lib/action_dispatch/middleware/debug_exceptions.rb
+++ b/actionpack/lib/action_dispatch/middleware/debug_exceptions.rb
@@ -138,9 +138,7 @@ module ActionDispatch
return unless logger
exception = wrapper.exception
-
- trace = wrapper.application_trace
- trace = wrapper.framework_trace if trace.empty?
+ trace = wrapper.exception_trace
ActiveSupport::Deprecation.silence do
message = []
diff --git a/actionpack/lib/action_dispatch/middleware/exception_wrapper.rb b/actionpack/lib/action_dispatch/middleware/exception_wrapper.rb
index 0cc56f5013..2bf3ddb540 100644
--- a/actionpack/lib/action_dispatch/middleware/exception_wrapper.rb
+++ b/actionpack/lib/action_dispatch/middleware/exception_wrapper.rb
@@ -62,6 +62,12 @@ module ActionDispatch
self.class.status_code_for_exception(unwrapped_exception.class.name)
end
+ def exception_trace
+ trace = application_trace
+ trace = framework_trace if trace.empty? && !exception.is_a?(ActionController::RoutingError)
+ trace
+ end
+
def application_trace
clean_backtrace(:silent)
end