} // prop SetLogSize #endregion #region -- IDELogConfig Members --------------------------------------------------- void ILogger.LogMsg(LogMsgType typ, string text) { Debug.Print("[{0}] {1}", Name, text); var logLine = new DELogLine(DateTime.Now, typ, text); if (Server.Queue?.IsQueueRunning ?? false) { Server.Queue.Factory.StartNew(() => logFile?.Add(logLine)); } else // Background thread is not in service, synchron add { logFile?.Add(logLine); } } // proc ILogger.LogMsg
public void LogTest02() { const string fileName = @"Temp\\Test02.txt"; if (File.Exists(fileName)) { File.Delete(fileName); } using (var log = new DELogFile(fileName)) { for (var i = 0; i < 100; i++) { log.Add(new DELogLine(BaseStamp.AddSeconds(i), LogMsgType.Information, $"Test Line {i}")); } } Assert.AreEqual(3990, new FileInfo(fileName).Length); using (var log = new DELogFile(fileName)) { var i = 0; foreach (DELogLine l in log) { Assert.AreEqual($"Test Line {i++}", l.Text); } i = 50; var e = log.GetEnumerator(50, 60); while (e.MoveNext()) { Assert.AreEqual($"Test Line {i++}", e.Current.Text); } } }
} // prop SetLogSize #endregion #region -- IDELogConfig Members ----------------------------------------------- void ILogger.LogMsg(LogMsgType type, string text) { Debug.Print("[{0}] {1}", Name, text); // create log line if (IsDebug || type != LogMsgType.Debug) { var logLine = new DELogLine(DateTime.Now, type == LogMsgType.Debug ? LogMsgType.Information : type, text); if (Server.Queue?.IsQueueRunning ?? false) { Server.Queue.RegisterCommand(() => logFile?.Add(logLine)); } else // Background thread is not in service, synchron add { logFile?.Add(logLine); } } DEScope.GetScopeService <IDEDebugContext>(false)?.OnMessage(type, text); } // proc ILogger.LogMsg
public void LogTest01() { const string fileName = @"Temp\\Test01.txt"; if (File.Exists(fileName)) { File.Delete(fileName); } using (var log = new DELogFile(fileName)) { for (var i = 0; i < 100; i++) { log.Add(new DELogLine(BaseStamp.AddSeconds(i), LogMsgType.Information, $"Test Line {i}")); } } Assert.AreEqual(3990, new FileInfo(fileName).Length); using (var log = new DELogFile(fileName)) { for (var i = 0; i < 100; i++) { log.Add(new DELogLine(BaseStamp.AddSeconds(i), LogMsgType.Error, $"Test Line {i}")); } } Assert.AreEqual(3990 * 2, new FileInfo(fileName).Length); using (var log = new DELogFile(fileName)) { log.SetSize(3992, 7000); log.Add(new DELogLine(BaseStamp, LogMsgType.Warning, "Last Line")); } Assert.AreEqual(4187, new FileInfo(fileName).Length); using (var log = new DELogFile(fileName)) { log.SetSize(0, 3000); log.Add(new DELogLine(BaseStamp, LogMsgType.Warning, "Last Line 2")); } Assert.AreEqual(396, new FileInfo(fileName).Length); }