Merged in hotfix/debug-errorlog (pull request #1)

Hotfix/debug errorlog
This commit is contained in:
HeathV
2018-08-31 17:54:25 +00:00
5 changed files with 28 additions and 52 deletions

Binary file not shown.

Binary file not shown.

View File

@@ -212,55 +212,28 @@ namespace PepperDash.Core
kauth.AuthenticationPrompt += new EventHandler<AuthenticationPromptEventArgs>(kauth_AuthenticationPrompt); kauth.AuthenticationPrompt += new EventHandler<AuthenticationPromptEventArgs>(kauth_AuthenticationPrompt);
PasswordAuthenticationMethod pauth = new PasswordAuthenticationMethod(Username, Password); PasswordAuthenticationMethod pauth = new PasswordAuthenticationMethod(Username, Password);
// Make a new client if we need it or things have changed if (Client != null)
//if (Client == null || PropertiesHaveChanged()) {
//{ Debug.Console(1, this, "Cleaning up disconnected client");
if (Client != null) Client.ErrorOccurred -= Client_ErrorOccurred;
{ KillStream();
Debug.Console(1, this, "Cleaning up disconnected client"); }
Client.ErrorOccurred -= Client_ErrorOccurred;
KillStream();
//if (TheStream != null)
//{
// TheStream.DataReceived -= Stream_DataReceived;
// TheStream.ErrorOccurred -= TheStream_ErrorOccurred;
//}
//TheStream = null;
}
Debug.Console(1, this, "Creating new SshClient"); Debug.Console(1, this, "Creating new SshClient");
ConnectionInfo connectionInfo = new ConnectionInfo(Hostname, Port, Username, pauth, kauth); ConnectionInfo connectionInfo = new ConnectionInfo(Hostname, Port, Username, pauth, kauth);
Client = new SshClient(connectionInfo); Client = new SshClient(connectionInfo);
Client.ErrorOccurred += Client_ErrorOccurred; Client.ErrorOccurred += Client_ErrorOccurred;
//}
//PreviousHostname = Hostname;
//PreviousPassword = Password;
//PreviousPort = Port;
//PreviousUsername = Username;
//You can do it! //You can do it!
ClientStatus = SocketStatus.SOCKET_STATUS_WAITING; ClientStatus = SocketStatus.SOCKET_STATUS_WAITING;
try try
{ {
Client.Connect(); Client.Connect();
TheStream = Client.CreateShellStream("PDTShell", 100, 80, 100, 200, 65534);
// Have to assume client is connected cause Client.IsConnected is busted in some cases TheStream.DataReceived += Stream_DataReceived;
// All other conditions *should* error out... //TheStream.ErrorOccurred += TheStream_ErrorOccurred;
//if (Client.IsConnected) Debug.Console(1, this, "Connected");
//{ ClientStatus = SocketStatus.SOCKET_STATUS_CONNECTED;
//Client.KeepAliveInterval = TimeSpan.FromSeconds(2);
//Client.SendKeepAlive();
TheStream = Client.CreateShellStream("PDTShell", 100, 80, 100, 200, 65534);
TheStream.DataReceived += Stream_DataReceived;
//TheStream.ErrorOccurred += TheStream_ErrorOccurred;
Debug.Console(1, this, "Connected");
ClientStatus = SocketStatus.SOCKET_STATUS_CONNECTED;
//PreviousHostname = Hostname;
//PreviousPassword = Password;
//PreviousPort = Port;
//PreviousUsername = Username;
//}
return; // Success will not pass here return; // Success will not pass here
} }
catch (SshConnectionException e) catch (SshConnectionException e)

View File

@@ -234,7 +234,7 @@ namespace PepperDash.Core
} }
/// <summary> /// <summary>
/// Appends a device Key to the beginning of a message /// Logs to Console when at-level, and all messages to error log, including device key
/// </summary> /// </summary>
public static void Console(uint level, IKeyed dev, string format, params object[] items) public static void Console(uint level, IKeyed dev, string format, params object[] items)
{ {
@@ -245,23 +245,26 @@ namespace PepperDash.Core
public static void Console(uint level, IKeyed dev, ErrorLogLevel errorLogLevel, public static void Console(uint level, IKeyed dev, ErrorLogLevel errorLogLevel,
string format, params object[] items) string format, params object[] items)
{ {
var str = string.Format("[{0}] {1}", dev.Key, string.Format(format, items));
LogError(errorLogLevel, str);
if (Level >= level) if (Level >= level)
{ {
var str = string.Format("[{0}] {1}", dev.Key, string.Format(format, items));
Console(level, str); Console(level, str);
LogError(errorLogLevel, str);
} }
} }
/// <summary>
/// Logs to Console when at-level, and all messages to error log
/// </summary>
public static void Console(uint level, ErrorLogLevel errorLogLevel, public static void Console(uint level, ErrorLogLevel errorLogLevel,
string format, params object[] items) string format, params object[] items)
{ {
if (Level >= level) var str = string.Format(format, items);
{ LogError(errorLogLevel, str);
var str = string.Format(format, items); if (Level >= level)
Console(level, str); {
LogError(errorLogLevel, str); Console(level, str);
} }
} }
/// <summary> /// <summary>

View File

@@ -4,4 +4,4 @@
[assembly: AssemblyCompany("")] [assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Pepperdash_Core")] [assembly: AssemblyProduct("Pepperdash_Core")]
[assembly: AssemblyCopyright("Copyright © PepperDash 2016")] [assembly: AssemblyCopyright("Copyright © PepperDash 2016")]
[assembly: AssemblyVersion("1.0.7.*")] [assembly: AssemblyVersion("1.0.8.*")]