fix: use direct file logging in diagnostics
This commit is contained in:
@@ -34,7 +34,8 @@ namespace LiamWorkflowDiagnostics
|
|||||||
private readonly ObservableCollection<string> _logEntries = new ObservableCollection<string>();
|
private readonly ObservableCollection<string> _logEntries = new ObservableCollection<string>();
|
||||||
private ProviderTestSession _session;
|
private ProviderTestSession _session;
|
||||||
private bool _isInitializingUi;
|
private bool _isInitializingUi;
|
||||||
private dynamic _diagnosticsLogger;
|
private readonly object _diagnosticsLogSync = new object();
|
||||||
|
private string _diagnosticsLogPath;
|
||||||
private readonly string _settingsPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "LiamWorkflowDiagnostics.settings.json");
|
private readonly string _settingsPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "LiamWorkflowDiagnostics.settings.json");
|
||||||
|
|
||||||
public MainWindow()
|
public MainWindow()
|
||||||
@@ -66,10 +67,10 @@ namespace LiamWorkflowDiagnostics
|
|||||||
var baseDir = AppDomain.CurrentDomain.BaseDirectory;
|
var baseDir = AppDomain.CurrentDomain.BaseDirectory;
|
||||||
var logDirectory = Path.Combine(baseDir, "logs");
|
var logDirectory = Path.Combine(baseDir, "logs");
|
||||||
Directory.CreateDirectory(logDirectory);
|
Directory.CreateDirectory(logDirectory);
|
||||||
var logPath = Path.Combine(logDirectory, "LiamWorkflowDiagnostics.log");
|
_diagnosticsLogPath = Path.Combine(logDirectory, "LiamWorkflowDiagnostics.log");
|
||||||
_diagnosticsLogger = cLogManagerFile.CreateInstance(logPath);
|
cLogManagerFile.CreateInstance(_diagnosticsLogPath);
|
||||||
cLogManager.Instance.Level = LogLevels.Debug;
|
cLogManager.Instance.Level = LogLevels.Debug;
|
||||||
AppendLog($"Logdatei: {logPath} (Level: Debug)");
|
AppendLog($"Logdatei: {_diagnosticsLogPath} (Level: Debug)");
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
@@ -139,8 +140,14 @@ namespace LiamWorkflowDiagnostics
|
|||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (_diagnosticsLogger != null)
|
if (!string.IsNullOrWhiteSpace(_diagnosticsLogPath))
|
||||||
_diagnosticsLogger.LogEntry(level, message);
|
{
|
||||||
|
var fileLine = $"{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff} [{level}] {message}{Environment.NewLine}";
|
||||||
|
lock (_diagnosticsLogSync)
|
||||||
|
{
|
||||||
|
File.AppendAllText(_diagnosticsLogPath, fileLine, Encoding.UTF8);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
catch { /* ignore */ }
|
catch { /* ignore */ }
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user