From 32caa005a33f985f7e922a53973ed24fafd43e6a Mon Sep 17 00:00:00 2001 From: Andrew Welker Date: Wed, 13 Mar 2024 08:21:15 -0500 Subject: [PATCH] fix: add console log level recall --- src/Pepperdash Core/Logging/Debug.cs | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/src/Pepperdash Core/Logging/Debug.cs b/src/Pepperdash Core/Logging/Debug.cs index 6648aff..d628d75 100644 --- a/src/Pepperdash Core/Logging/Debug.cs +++ b/src/Pepperdash Core/Logging/Debug.cs @@ -21,6 +21,7 @@ namespace PepperDash.Core /// public static class Debug { + private static string LevelStoreKey = "ConsoleDebugLevel"; private static Dictionary _logLevels = new Dictionary() { {0, LogEventLevel.Information }, @@ -101,7 +102,9 @@ namespace PepperDash.Core static Debug() { - _consoleLoggingLevelSwitch = new LoggingLevelSwitch(initialMinimumLevel: LogEventLevel.Information); + var defaultConsoleLevel = GetStoredLogEventLevel(); + + _consoleLoggingLevelSwitch = new LoggingLevelSwitch(initialMinimumLevel: defaultConsoleLevel); _consoleLoggingLevelSwitch.MinimumLevelChanged += (sender, args) => { Console(0, "Console debug level set to {0}", _consoleLoggingLevelSwitch.MinimumLevel); @@ -187,6 +190,24 @@ namespace PepperDash.Core } } + private static LogEventLevel GetStoredLogEventLevel() + { + try + { + var result = CrestronDataStoreStatic.GetLocalUintValue(LevelStoreKey, out uint logLevel); + + if(result != CrestronDataStore.CDS_ERROR.CDS_SUCCESS || logLevel > 5 || logLevel < 0) + { + return LogEventLevel.Information; + } + + return _logLevels[logLevel]; + } catch + { + return LogEventLevel.Information; + } + } + private static void GetVersion() { var assembly = Assembly.GetExecutingAssembly();