Skip to content

Commit c371c30

Browse files
Allow log level selection
1 parent c4310f0 commit c371c30

File tree

3 files changed

+33
-4
lines changed

3 files changed

+33
-4
lines changed

Flow.Launcher.Infrastructure/Logger/Log.cs

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,17 +48,31 @@ static Log()
4848
configuration.AddTarget("file", fileTargetASyncWrapper);
4949
configuration.AddTarget("debug", debugTarget);
5050

51+
var fileRule = new LoggingRule("*", LogLevel.Debug, fileTargetASyncWrapper)
52+
{
53+
RuleName = "file"
54+
};
5155
#if DEBUG
52-
var fileRule = new LoggingRule("*", LogLevel.Debug, fileTargetASyncWrapper);
53-
var debugRule = new LoggingRule("*", LogLevel.Debug, debugTarget);
56+
var debugRule = new LoggingRule("*", LogLevel.Debug, debugTarget)
57+
{
58+
RuleName = "debug"
59+
};
5460
configuration.LoggingRules.Add(debugRule);
55-
#else
56-
var fileRule = new LoggingRule("*", LogLevel.Info, fileTargetASyncWrapper);
5761
#endif
5862
configuration.LoggingRules.Add(fileRule);
5963
LogManager.Configuration = configuration;
6064
}
6165

66+
public static void UseDebugLogLevel()
67+
{
68+
LogManager.Configuration.FindRuleByName("file").SetLoggingLevels(LogLevel.Debug, LogLevel.Fatal);
69+
}
70+
71+
public static void UseInfoLogLevel()
72+
{
73+
LogManager.Configuration.FindRuleByName("file").SetLoggingLevels(LogLevel.Info, LogLevel.Fatal);
74+
}
75+
6276
private static void LogFaultyFormat(string message)
6377
{
6478
var logger = LogManager.GetLogger("FaultyLogger");

Flow.Launcher.Infrastructure/UserSettings/Settings.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,7 @@ public CustomBrowserViewModel CustomBrowser
180180
}
181181
};
182182

183+
public string LogLevel = "info";
183184

184185
/// <summary>
185186
/// when false Alphabet static service will always return empty results

Flow.Launcher/App.xaml.cs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,20 @@ await Stopwatch.NormalAsync("|App.OnStartup|Startup cost", async () =>
6464
_settings = _settingsVM.Settings;
6565
_settings.WMPInstalled = WindowsMediaPlayerHelper.IsWindowsMediaPlayerInstalled();
6666

67+
switch (_settings.LogLevel)
68+
{
69+
case "debug":
70+
Log.UseDebugLogLevel();
71+
break;
72+
case "info":
73+
Log.UseInfoLogLevel();
74+
break;
75+
default:
76+
Log.Error(nameof(Flow.Launcher.App), "Unrecognized log level");
77+
Log.UseDebugLogLevel();
78+
break;
79+
}
80+
6781
AbstractPluginEnvironment.PreStartPluginExecutablePathUpdate(_settings);
6882

6983
_alphabet.Initialize(_settings);

0 commit comments

Comments
 (0)