static void Main(string[] args) { ILayout simpleLayout = new SimpleLayout(); IAppender consoleAppender = new ConsoleAppender(simpleLayout); ILogger logger = new Logger(consoleAppender); logger.Error("Error parsing JSON"); logger.Info(string.Format("User {0} successfully registered.", "Pesho")); Console.WriteLine(new string('-', 20)); //We create a second Appender and add it to the existing ILogger object IFileAppender fileAppender = new FileAppender(simpleLayout); fileAppender.File = "log.txt"; logger.AddAppender(fileAppender); logger.Fatal("mscorlib.dll does not respond"); logger.Critical("No connection string found in App.config"); Console.WriteLine(new string('-', 20)); //We set the new XML Layout on each Appender that the Logger object uses foreach (IAppender appender in logger.Appenders) { appender.Layout = new XmlLayout(); } logger.Fatal("mscorlib.dll does not respond"); logger.Critical("No connection string found in App.config"); Console.WriteLine(new string('-', 20)); //We set the Report Level Minimum at Error foreach (IAppender appender in logger.Appenders) { appender.ReportLevelMinimum = Enums.ReportLevel.Error; } logger.Info("Everything seems fine"); logger.Warning("Warning: ping is too high - disconnect imminent"); logger.Error("Error parsing request"); logger.Critical("No connection string found in App.config"); logger.Fatal("mscorlib.dll does not respond"); Console.WriteLine(new string('-', 20)); }
public void TestLogging() { var config = new FileConfiguration { CreateDateFolder = true, DaysToKeep = 3, Path = AppDomain.CurrentDomain.BaseDirectory }; var target = new FileTarget("Everything", config); target.Enqueue(new LogEntry { CreatedAt = DateTime.Now, LogLevel = LogLevel.Debug, Message = "Hello world", LoggedType = GetType(), MethodName = MethodBase.GetCurrentMethod().Name, ThreadId = Thread.CurrentThread.ManagedThreadId, UserName = Thread.CurrentPrincipal.Identity.Name ?? Environment.UserName }); var target2 = new PaddedFileTarget("EVeryone", config); target2.Enqueue(new LogEntry { CreatedAt = DateTime.Now, LogLevel = LogLevel.Debug, Message = "Hello world", LoggedType = GetType(), MethodName = MethodBase.GetCurrentMethod().Name, ThreadId = Thread.CurrentThread.ManagedThreadId, UserName = Thread.CurrentPrincipal.Identity.Name ?? Environment.UserName }); var logger = new Logger(GetType(), new[] {target2, target}); logger.Info("Hello"); logger.Debug("Hello"); logger.Warning("Hello"); logger.Error("Hello"); }
public void TestLogging() { var config = new FileConfiguration { CreateDateFolder = true, DaysToKeep = 3, Path = @"d:\logfiles" }; var target = new FileTarget("Everything", config); target.Enqueue(new LogEntry { CreatedAt = DateTime.Now, LogLevel = LogLevel.Debug, Message = "Hello world", StackFrames = new StackTrace().GetFrames(), ThreadId = Thread.CurrentThread.ManagedThreadId, UserName = Thread.CurrentPrincipal.Identity.Name ?? Environment.UserName }); var target2 = new PaddedFileTarget("EVeryone", config); target2.Enqueue(new LogEntry { CreatedAt = DateTime.Now, LogLevel = LogLevel.Debug, Message = "Hello world", StackFrames = new StackTrace().GetFrames(), ThreadId = Thread.CurrentThread.ManagedThreadId, UserName = Thread.CurrentPrincipal.Identity.Name ?? Environment.UserName }); var logger = new Logger(GetType(), new[] {target2, target}); logger.Info("Hello"); logger.Debug("Hello"); logger.Warning("Hello"); logger.Error("Hello"); }
public async Task WarningDoesNotLogWhenLogLevelAtError() { // Arrange Logger logger = new Logger(_runtimeEnvironment.Object, _queue.Object, _source.Object, _extension.Object, LogLevelEnum.Error, _correlationIdProvider.Object); // Act await logger.Warning("a message"); // Assert _queue.Verify(x => x.EnqueueAsync(It.IsAny<LogQueueItem>()), Times.Never); }
void TryLogger(Logger logger) { bool thrown = false; string message = "msg"; try { logger.Always(message); logger.Debug(message); logger.Detailed(message); logger.Error(message); logger.Event(message); logger.Fatal(message); logger.Info(message); logger.Warning(message); } catch (Exception) { thrown = true; } Assert.IsFalse(thrown); }
public void Logger_Warning() { const string message = "message"; int counter = 0; ILogger logger = new Logger(); (logger as Logger).OnCritical = s => Assert.Fail(); (logger as Logger).OnError = s => Assert.Fail(); (logger as Logger).OnWarning = s => counter++; (logger as Logger).OnInformational = s => Assert.Fail(); (logger as Logger).OnDebug = s => Assert.Fail(); (logger as Logger).OnDiagnostic = s => Assert.Fail(); (logger as Logger).OnChangeEvent = (a, b) => Assert.Fail(); logger.Warning(message); Assert.AreEqual(1, counter); }
public void Logger_NoRoutes() { const string message = "message"; ILogger logger = new Logger(); logger.Critical(message); logger.Error(message); logger.Warning(message); logger.Informational(message); logger.Debug(message); logger.Diagnostic(message); logger.ChangeEvent(message, message);//string is not a good example here, but the function isn't called anyway //yes, nothing happens. //this test is here to ensure no exceptions occur when leaving handlers unspecified for the logger }