diff options
author | jcm <john.moody@coloradocollege.edu> | 2024-02-10 19:17:19 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-11 02:17:19 +0100 |
commit | 84d6e8d121a1b329d26cc0e462aadd1108d99a04 (patch) | |
tree | f50072df2ffa3f86697aa7859185f71e1df7412e /src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs | |
parent | 95c4912d58a535de4f5c03a2e380bdd39a543c12 (diff) |
Standardize logging locations across desktop platforms (#6238)1.1.1186
* Standardize logging locations across desktop platforms
* Return null instead of empty literal on exceptions
* Remove LogDirectoryPath from LoggerModule
* Catch exception when creating DirectoryInfo in FileLogTarget
* Remove redundant log path vars, handle exception better, add null check
* Address styling issues
* Remove extra newline, quote file path in log, move directory check to OpenHelper
* Add GetOrCreateLogsDir to get/create log directory during runtime
* misc format changes
* Update src/Ryujinx.Common/Configuration/AppDataManager.cs
---------
Co-authored-by: jcm <butt@butts.com>
Co-authored-by: TSR Berry <20988865+TSRBerry@users.noreply.github.com>
Co-authored-by: Ac_K <Acoustik666@gmail.com>
Diffstat (limited to 'src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs')
-rw-r--r-- | src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs b/src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs index f22ee83a..2edcd07f 100644 --- a/src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs +++ b/src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs @@ -9,8 +9,6 @@ namespace Ryujinx.Ui.Common.Configuration { public static class LoggerModule { - public static string LogDirectoryPath { get; private set; } - public static void Initialize() { ConfigurationState.Instance.Logger.EnableDebug.Event += ReloadEnableDebug; @@ -84,26 +82,22 @@ namespace Ryujinx.Ui.Common.Configuration { if (e.NewValue) { - string logDir = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Logs"); - FileStream logFile = FileLogTarget.PrepareLogFile(logDir); + string logDir = AppDataManager.LogsDirPath; + FileStream logFile = null; - if (logFile == null) + if (!string.IsNullOrEmpty(logDir)) { - logDir = Path.Combine(AppDataManager.BaseDirPath, "Logs"); logFile = FileLogTarget.PrepareLogFile(logDir); + } - if (logFile == null) - { - Logger.Error?.Print(LogClass.Application, "No writable log directory available. Make sure either the application directory or the Ryujinx directory is writable."); - LogDirectoryPath = null; - Logger.RemoveTarget("file"); + if (logFile == null) + { + Logger.Error?.Print(LogClass.Application, "No writable log directory available. Make sure either the Logs directory, Application Data, or the Ryujinx directory is writable."); + Logger.RemoveTarget("file"); - return; - } + return; } - LogDirectoryPath = logDir; - Logger.AddTarget(new AsyncLogTargetWrapper( new FileLogTarget("file", logFile), 1000, |