diff options
| author | Austin Hellyer <[email protected]> | 2017-02-01 14:00:59 -0800 |
|---|---|---|
| committer | Austin Hellyer <[email protected]> | 2017-02-01 14:00:59 -0800 |
| commit | d72f9cf0e3ab1095b489eeddafa8e614fa462b65 (patch) | |
| tree | c5b7e2140511d0ae3ae8cd8e84731403fdcb664d /src | |
| parent | Don't clone the context (diff) | |
| download | serenity-d72f9cf0e3ab1095b489eeddafa8e614fa462b65.tar.xz serenity-d72f9cf0e3ab1095b489eeddafa8e614fa462b65.zip | |
Log only unexpected keepalive errors
Diffstat (limited to 'src')
| -rw-r--r-- | src/client/gateway/prep.rs | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/client/gateway/prep.rs b/src/client/gateway/prep.rs index 10f00ce..15716df 100644 --- a/src/client/gateway/prep.rs +++ b/src/client/gateway/prep.rs @@ -13,6 +13,7 @@ use super::{GatewayError, GatewayStatus}; use time::{self, Duration}; use websocket::client::request::Url as RequestUrl; use websocket::client::{Receiver, Sender}; +use websocket::result::WebSocketError as WsError; use websocket::stream::WebSocketStream; use ::constants::{self, LARGE_THRESHOLD, OpCode}; use ::error::{Error, Result}; @@ -138,7 +139,14 @@ pub fn keepalive(interval: u64, *heartbeat_sent.lock().unwrap() = now; }, Err(why) => { - warn!("Error sending keepalive: {:?}", why); + match why { + Error::WebSocket(WsError::IoError(err)) => { + if err.raw_os_error() != Some(32) { + debug!("Err w/ keepalive: {:?}", err); + } + }, + other => warn!("Other err w/ keepalive: {:?}", other), + } if last_successful { debug!("If next keepalive fails, closing"); @@ -156,6 +164,11 @@ pub fn keepalive(interval: u64, match sender.shutdown_all() { Ok(_) => debug!("Successfully shutdown sender/receiver"), - Err(why) => warn!("Failed to shutdown sender/receiver: {:?}", why), + Err(why) => { + // This can fail if the receiver already shutdown. + if why.raw_os_error() != Some(107) { + warn!("Failed to shutdown sender/receiver: {:?}", why); + } + }, } } |