Compare commits

...

8 Commits

Author SHA1 Message Date
Andrew Welker
650fa3aab0 fix: enable internal logging for the websocket at the trace level 2025-09-29 10:48:34 -05:00
Andrew Welker
0efddcf5ab Merge branch 'main' into mc-connect-logging 2025-09-29 10:37:26 -05:00
Andrew Welker
8cc4d36f5f Revert "refactor(force-patch): move MC touch panel class to use partial classes"
This reverts commit 3261c01bfa.
2025-09-29 10:36:50 -05:00
Andrew Welker
3261c01bfa refactor(force-patch): move MC touch panel class to use partial classes 2025-09-19 13:13:09 -05:00
Andrew Welker
f84ae4d82f fix: use correct keys and switch for file log level 2025-09-17 12:42:39 -05:00
Andrew Welker
9a18bfd816 Merge branch 'main' into mc-connect-logging 2025-09-17 11:41:23 -05:00
Andrew Welker
557e39f2f2 fix: CS LAN fixes 2025-09-17 11:38:20 -05:00
Andrew Welker
7c6aa1c0ff fix: set file log level for debugging 2025-09-15 11:02:06 -05:00
3 changed files with 39 additions and 11 deletions

View File

@@ -466,14 +466,14 @@ namespace PepperDash.Core
/// </summary>
public static void SetFileMinimumDebugLevel(LogEventLevel level)
{
_errorLogLevelSwitch.MinimumLevel = level;
_fileLevelSwitch.MinimumLevel = level;
var err = CrestronDataStoreStatic.SetLocalUintValue(ErrorLogLevelStoreKey, (uint)level);
var err = CrestronDataStoreStatic.SetLocalUintValue(FileLevelStoreKey, (uint)level);
if (err != CrestronDataStore.CDS_ERROR.CDS_SUCCESS)
LogMessage(LogEventLevel.Information, "Error saving File debug level setting: {error}", err);
LogMessage(LogEventLevel.Information, "File debug level set to {0}", _websocketLoggingLevelSwitch.MinimumLevel);
LogMessage(LogEventLevel.Information, "File debug level set to {0}", _fileLevelSwitch.MinimumLevel);
}
/// <summary>

View File

@@ -244,13 +244,15 @@ namespace PepperDash.Essentials
CrestronEnvironment.ProgramStatusEventHandler +=
CrestronEnvironment_ProgramStatusEventHandler;
ApiOnlineAndAuthorized = new BoolFeedback(() =>
ApiOnlineAndAuthorized = new BoolFeedback("apiOnlineAndAuthorized", () =>
{
if (_wsClient2 == null)
return false;
return _wsClient2.IsAlive && IsAuthorized;
});
Debug.SetFileMinimumDebugLevel(Serilog.Events.LogEventLevel.Verbose);
}
private void SetupDefaultRoomMessengers()
@@ -1336,13 +1338,38 @@ namespace PepperDash.Essentials
Log =
{
Output = (data, s) =>
this.LogDebug(
"Message from websocket: {message}",
data
)
{
switch (data.Level)
{
case LogLevel.Trace:
this.LogVerbose(data.Message);
break;
case LogLevel.Debug:
this.LogDebug(data.Message);
break;
case LogLevel.Info:
this.LogInformation(data.Message);
break;
case LogLevel.Warn:
this.LogWarning(data.Message);
break;
case LogLevel.Error:
this.LogError(data.Message);
break;
case LogLevel.Fatal:
this.LogFatal(data.Message);
break;
}
}
}
};
// if Essentials is running on a server, set the log level to the lowest level to get the most detail in the logs
if (CrestronEnvironment.DevicePlatform == eDevicePlatform.Server)
{
_wsClient2.Log.Level = LogLevel.Trace;
}
_wsClient2.SslConfiguration.EnabledSslProtocols =
System.Security.Authentication.SslProtocols.Tls11
| System.Security.Authentication.SslProtocols.Tls12;
@@ -1917,7 +1944,8 @@ namespace PepperDash.Essentials
/// <param name="e"></param>
private void HandleError(object sender, ErrorEventArgs e)
{
this.LogError("Websocket error {0}", e.Message);
this.LogError("Websocket error {message}", e.Message);
this.LogError(e.Exception, "Websocket error");
IsAuthorized = false;
StartServerReconnectTimer();
@@ -1930,7 +1958,7 @@ namespace PepperDash.Essentials
/// <param name="e"></param>
private void HandleClose(object sender, CloseEventArgs e)
{
this.LogDebug(
this.LogInformation(
"Websocket close {code} {reason}, clean={wasClean}",
e.Code,
e.Reason,

View File

@@ -452,7 +452,7 @@ namespace PepperDash.Essentials.Touchpanel
var processorIp = CrestronEthernetHelper.GetEthernetParameter(CrestronEthernetHelper.ETHERNET_PARAMETER_TO_GET.GET_CURRENT_IP_ADDRESS, lanAdapterId);
if(csIpAddress == null || csSubnetMask == null || url == null)
if (csIpAddress == null || csSubnetMask == null || url == null)
{
this.LogWarning("CS IP Address Subnet Mask or url is null, cannot determine correct IP for URL");
return url;