mirror of
https://github.com/puma/puma.git
synced 2022-11-09 13:48:40 -05:00
Rewrite contextual error backtrace to use Puma::Events#unknown_error instead
This commit is contained in:
parent
cbb793d620
commit
d76e612c21
2 changed files with 12 additions and 7 deletions
|
@ -106,15 +106,21 @@ module Puma
|
|||
end
|
||||
|
||||
# An unknown error has occurred.
|
||||
# +server+ is the Server object, +error+ an exception object, and
|
||||
# +kind+ some additional info.
|
||||
# +server+ is the Server object, +error+ an exception object,
|
||||
# +kind+ some additional info, and +env+ the request.
|
||||
#
|
||||
def unknown_error(server, error, kind="Unknown")
|
||||
def unknown_error(server, error, kind="Unknown", env=nil)
|
||||
if error.respond_to? :render
|
||||
error.render "#{Time.now}: #{kind} error", @stderr
|
||||
else
|
||||
@stderr.puts "#{Time.now}: #{kind} error: #{error.inspect}"
|
||||
@stderr.puts error.backtrace.join("\n")
|
||||
if env
|
||||
string_block = [ "#{Time.now}: #{kind} error handling request { #{env['REQUEST_METHOD']} #{env['PATH_INFO']} }" ]
|
||||
string_block << error.inspect
|
||||
else
|
||||
string_block = [ "#{Time.now}: #{kind} error: #{error.inspect}" ]
|
||||
end
|
||||
string_block << error.backtrace
|
||||
@stderr.puts string_block.join("\n")
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -588,8 +588,7 @@ module Puma
|
|||
res_body = ["Request was internally terminated early\n"]
|
||||
|
||||
rescue StandardError => e
|
||||
STDERR.puts "#{Time.now}: error handling request: { #{ env['REQUEST_METHOD'] } #{ env['PATH_INFO'] } }:"
|
||||
@events.unknown_error self, e, "Rack app"
|
||||
@events.unknown_error self, e, "Rack app", env
|
||||
|
||||
status, headers, res_body = lowlevel_error(e, env)
|
||||
end
|
||||
|
|
Loading…
Add table
Reference in a new issue