using System; using System.IO; using System.Diagnostics; namespace ASTM_D7896_Tester.Services { public static class Logger { private static readonly object _lock = new object(); private static string _logFilePath = "D7896_Test_Log.txt"; public static void Log(string message, bool toConsole = true, bool toFile = true) { string timestamp = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"); string logLine = $"{timestamp} - {message}"; if (toConsole) Debug.WriteLine(logLine); if (toFile) { lock (_lock) { File.AppendAllText(_logFilePath, logLine + Environment.NewLine); } } } public static void LogData(string label, double value, string unit = "") { Log($"{label}: {value:F6} {unit}".Trim()); } } }