aboutsummaryrefslogtreecommitdiffstats
path: root/lib/plum/rack/server.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/plum/rack/server.rb')
-rw-r--r--lib/plum/rack/server.rb15
1 files changed, 8 insertions, 7 deletions
diff --git a/lib/plum/rack/server.rb b/lib/plum/rack/server.rb
index a353db7..608bf18 100644
--- a/lib/plum/rack/server.rb
+++ b/lib/plum/rack/server.rb
@@ -27,7 +27,7 @@ module Plum
end
rescue Errno::EBADF, Errno::ENOTSOCK, IOError => e # closed
rescue StandardError => e
- @logger.error("#{e.class}: #{e.message}\n#{e.backtrace.map { |b| "\t#{b}" }.join("\n")}")
+ log_exception(e)
end
end
end
@@ -46,20 +46,21 @@ module Plum
sock = sock.accept if sock.respond_to?(:accept)
plum = svr.plum(sock)
- #require "lineprof"
- #Lineprof.profile(/plum/) {
- con = Connection.new(@app, plum, @logger)
- con.run
- #}
+ con = Connection.new(@app, plum, @logger)
+ con.run
rescue Errno::ECONNRESET, Errno::ECONNABORTED, Errno::EPROTO, Errno::EINVAL => e # closed
sock.close if sock
rescue StandardError => e
- @logger.error("#{e.class}: #{e.message}\n#{e.backtrace.map { |b| "\t#{b}" }.join("\n")}")
+ log_exception(e)
sock.close if sock
end
}
rescue Errno::ECONNRESET, Errno::ECONNABORTED, Errno::EPROTO, Errno::EINVAL => e # closed
rescue StandardError => e
+ log_exception(e)
+ end
+
+ def log_exception(e)
@logger.error("#{e.class}: #{e.message}\n#{e.backtrace.map { |b| "\t#{b}" }.join("\n")}")
end
end