From 8ea62fd8075f364330e0b1a7ef012e0f2c6f5244 Mon Sep 17 00:00:00 2001 From: Kwoth Date: Wed, 4 Jan 2017 00:38:11 +0100 Subject: [PATCH] Better logging reconnect on disconnect? --- src/NadekoBot/ShardedDiscordClient.cs | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/NadekoBot/ShardedDiscordClient.cs b/src/NadekoBot/ShardedDiscordClient.cs index 2c6037b0..b84cb63c 100644 --- a/src/NadekoBot/ShardedDiscordClient.cs +++ b/src/NadekoBot/ShardedDiscordClient.cs @@ -66,11 +66,18 @@ namespace NadekoBot _log.Info($"Shard #{i} initialized."); - client.Disconnected += (ex) => + var j = i; + client.Disconnected += async (ex) => { - _log.Error("Shard #{0} disconnected", i); - _log.Error(ex); - return Task.CompletedTask; + try + { + _log.Error("Shard #{0} disconnected", j); + _log.Error(ex, ex?.Message ?? "No error"); + + try { await client.DisconnectAsync().ConfigureAwait(false); } catch { } + await client.ConnectAsync().ConfigureAwait(false); + } + catch { } }; }