mirror of
https://github.com/PepperDash/PepperDashCore.git
synced 2026-01-11 19:44:44 +00:00
Reduces error log messages from SSH client on basic disconnects
This commit is contained in:
@@ -66,6 +66,7 @@ namespace PepperDash.Core
|
|||||||
}
|
}
|
||||||
|
|
||||||
private bool IsConnecting = false;
|
private bool IsConnecting = false;
|
||||||
|
private bool DisconnectLogged = false;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// S+ helper for IsConnected
|
/// S+ helper for IsConnected
|
||||||
@@ -251,24 +252,28 @@ namespace PepperDash.Core
|
|||||||
Debug.Console(1, this, Debug.ErrorLogLevel.Notice, "Connected");
|
Debug.Console(1, this, Debug.ErrorLogLevel.Notice, "Connected");
|
||||||
ClientStatus = SocketStatus.SOCKET_STATUS_CONNECTED;
|
ClientStatus = SocketStatus.SOCKET_STATUS_CONNECTED;
|
||||||
IsConnecting = false;
|
IsConnecting = false;
|
||||||
|
DisconnectLogged = false;
|
||||||
return; // Success will not pass here
|
return; // Success will not pass here
|
||||||
}
|
}
|
||||||
catch (SshConnectionException e)
|
catch (SshConnectionException e)
|
||||||
{
|
{
|
||||||
var ie = e.InnerException; // The details are inside!!
|
var ie = e.InnerException; // The details are inside!!
|
||||||
|
var errorLogLevel = DisconnectLogged == true ? Debug.ErrorLogLevel.None : Debug.ErrorLogLevel.Error;
|
||||||
|
|
||||||
if (ie is SocketException)
|
if (ie is SocketException)
|
||||||
Debug.Console(1, this, Debug.ErrorLogLevel.Error, "'{0}' CONNECTION failure: Cannot reach host, ({1})", Key, ie.Message);
|
Debug.Console(1, this, errorLogLevel, "'{0}' CONNECTION failure: Cannot reach host, ({1})", Key, ie.Message);
|
||||||
else if (ie is System.Net.Sockets.SocketException)
|
else if (ie is System.Net.Sockets.SocketException)
|
||||||
Debug.Console(1, this, Debug.ErrorLogLevel.Error, "'{0}' Connection failure: Cannot reach host '{1}' on port {2}, ({3})",
|
Debug.Console(1, this, errorLogLevel, "'{0}' Connection failure: Cannot reach host '{1}' on port {2}, ({3})",
|
||||||
Key, Hostname, Port, ie.GetType());
|
Key, Hostname, Port, ie.GetType());
|
||||||
else if (ie is SshAuthenticationException)
|
else if (ie is SshAuthenticationException)
|
||||||
{
|
{
|
||||||
Debug.Console(1, this, Debug.ErrorLogLevel.Error, "Authentication failure for username '{0}', ({1})",
|
Debug.Console(1, this, errorLogLevel, "Authentication failure for username '{0}', ({1})",
|
||||||
Username, ie.Message);
|
Username, ie.Message);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
Debug.Console(1, this, Debug.ErrorLogLevel.Error, "Error on connect:\r({0})", e);
|
Debug.Console(1, this, errorLogLevel, "Error on connect:\r({0})", e);
|
||||||
|
|
||||||
|
DisconnectLogged = true;
|
||||||
ClientStatus = SocketStatus.SOCKET_STATUS_CONNECT_FAILED;
|
ClientStatus = SocketStatus.SOCKET_STATUS_CONNECT_FAILED;
|
||||||
HandleConnectionFailure();
|
HandleConnectionFailure();
|
||||||
}
|
}
|
||||||
@@ -335,7 +340,7 @@ namespace PepperDash.Core
|
|||||||
{
|
{
|
||||||
Connect();
|
Connect();
|
||||||
}, AutoReconnectIntervalMs);
|
}, AutoReconnectIntervalMs);
|
||||||
Debug.Console(1, this, Debug.ErrorLogLevel.Notice, "Attempting connection in {0} seconds",
|
Debug.Console(1, this, "Attempting connection in {0} seconds",
|
||||||
(float) (AutoReconnectIntervalMs/1000));
|
(float) (AutoReconnectIntervalMs/1000));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -389,7 +389,10 @@ namespace PepperDash.Core
|
|||||||
string format, params object[] items)
|
string format, params object[] items)
|
||||||
{
|
{
|
||||||
var str = string.Format("[{0}] {1}", dev.Key, string.Format(format, items));
|
var str = string.Format("[{0}] {1}", dev.Key, string.Format(format, items));
|
||||||
LogError(errorLogLevel, str);
|
if (errorLogLevel != ErrorLogLevel.None)
|
||||||
|
{
|
||||||
|
LogError(errorLogLevel, str);
|
||||||
|
}
|
||||||
if (Level >= level)
|
if (Level >= level)
|
||||||
{
|
{
|
||||||
Console(level, str);
|
Console(level, str);
|
||||||
@@ -403,7 +406,10 @@ namespace PepperDash.Core
|
|||||||
string format, params object[] items)
|
string format, params object[] items)
|
||||||
{
|
{
|
||||||
var str = string.Format(format, items);
|
var str = string.Format(format, items);
|
||||||
LogError(errorLogLevel, str);
|
if (errorLogLevel != ErrorLogLevel.None)
|
||||||
|
{
|
||||||
|
LogError(errorLogLevel, str);
|
||||||
|
}
|
||||||
if (Level >= level)
|
if (Level >= level)
|
||||||
{
|
{
|
||||||
Console(level, str);
|
Console(level, str);
|
||||||
|
|||||||
Reference in New Issue
Block a user