From 37189b07cf8d4fe32b74ace3a416c845525d0334 Mon Sep 17 00:00:00 2001 From: Daniel Date: Fri, 5 Jun 2020 13:04:45 +0200 Subject: [PATCH] Detect close errors --- api/database.go | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/api/database.go b/api/database.go index 39d128b..9830571 100644 --- a/api/database.go +++ b/api/database.go @@ -127,8 +127,14 @@ func (api *DatabaseAPI) handler() { if err != nil { if !api.shuttingDown.IsSet() { api.shutdown() - if !websocket.IsCloseError(err, websocket.CloseNormalClosure, websocket.CloseGoingAway) { - log.Warningf("api: websocket write error: %s", err) + if websocket.IsCloseError(err, + websocket.CloseNormalClosure, + websocket.CloseGoingAway, + websocket.CloseAbnormalClosure, + ) { + log.Infof("api: websocket connection to %s closed", api.conn.RemoteAddr()) + } else { + log.Warningf("api: websocket read error from %s: %s", api.conn.RemoteAddr(), err) } } return @@ -204,8 +210,14 @@ func (api *DatabaseAPI) writer() { if err != nil { if !api.shuttingDown.IsSet() { api.shutdown() - if !websocket.IsCloseError(err, websocket.CloseNormalClosure, websocket.CloseGoingAway) { - log.Warningf("api: websocket write error: %s", err) + if websocket.IsCloseError(err, + websocket.CloseNormalClosure, + websocket.CloseGoingAway, + websocket.CloseAbnormalClosure, + ) { + log.Infof("api: websocket connection to %s closed", api.conn.RemoteAddr()) + } else { + log.Warningf("api: websocket write error to %s: %s", api.conn.RemoteAddr(), err) } } return