Clients may disconnect on us while we're writing the response
here, so we should shut the backtrace up to avoid polluting
logs.
---
lib/yahns/proxy_pass.rb | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/lib/yahns/proxy_pass.rb b/lib/yahns/proxy_pass.rb
index 89c6ef8..9512318 100644
--- a/lib/yahns/proxy_pass.rb
+++ b/lib/yahns/proxy_pass.rb
@@ -74,7 +74,10 @@ class Yahns::ProxyPass # :nodoc:
rescue => e
# avoid polluting logs with a giant backtrace when the problem isn't
# fixable in code.
- e.set_backtrace([]) if Errno::ECONNREFUSED === e
+ case e
+ when Errno::ECONNREFUSED, Errno::ECONNRESET, Errno::EPIPE
+ e.set_backtrace([])
+ end
c.proxy_err_response(502, self, e, nil)
end
--
EW
--
unsubscribe: [email protected]
archive: http://yhbt.net/yahns-public/