aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs')
-rw-r--r--src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs b/src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs
index 6cd63272..f22ee83a 100644
--- a/src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs
+++ b/src/Ryujinx.Ui.Common/Configuration/LoggerModule.cs
@@ -9,6 +9,8 @@ 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;
@@ -82,21 +84,26 @@ namespace Ryujinx.Ui.Common.Configuration
{
if (e.NewValue)
{
- FileStream logFile = FileLogTarget.PrepareLogFile(AppDomain.CurrentDomain.BaseDirectory);
+ string logDir = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Logs");
+ FileStream logFile = FileLogTarget.PrepareLogFile(logDir);
if (logFile == null)
{
- logFile = FileLogTarget.PrepareLogFile(AppDataManager.BaseDirPath);
+ 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");
return;
}
}
+ LogDirectoryPath = logDir;
+
Logger.AddTarget(new AsyncLogTargetWrapper(
new FileLogTarget("file", logFile),
1000,