Example #1
0
        public void LogWrangling()
        {
            LogManager.Start();
            LogManager.SetConfiguration(""); // wipe any config

            Assert.IsNotNull(LogManager.ConsoleLogger);
            try
            {
                LogManager.DestroyLogger(LogManager.ConsoleLogger);
                Assert.Fail();
            }
            catch (ArgumentException) { }

            IEventLogger someLogger = LogManager.CreateTextLogger("testlog");

            Assert.IsNotNull(someLogger as TextFileLogger);
            Assert.AreSame(someLogger, LogManager.GetFileLogger("testlog"));
            LogManager.DestroyLogger(someLogger);
            Assert.IsNull(LogManager.GetFileLogger("testlog"));

            FileBackedLogger externalLogger = null;

            try
            {
                externalLogger = new FileBackedLogger("external", ".", LoggerType.TextLogFile,
                                                      LogManager.DefaultFileBufferSizeMB,
                                                      1, FileBackedLogger.DefaultFilenameTemplate,
                                                      false);
                LogManager.DestroyLogger(externalLogger.Logger);
                Assert.Fail();
            }
            catch (ArgumentException) { }
            finally
            {
                if (externalLogger != null)
                {
                    externalLogger.Dispose();
                }
            }
            LogManager.Shutdown();
        }
        public void LogCreationAndDestruction()
        {
            LogManager.Start();

            var consoleLogger = LogManager.GetLogger <ConsoleLogger>(null);

            Assert.IsNotNull(consoleLogger);
            try
            {
                LogManager.DestroyLogger(consoleLogger);
                Assert.Fail();
            }
            catch (ArgumentException) { }

            var config     = new LogConfiguration("testlog", LogType.Text, LogManager.DefaultSubscriptions);
            var someLogger = LogManager.CreateLogger <TextFileLogger>(config);

            Assert.IsNotNull(someLogger);
            Assert.AreSame(someLogger, LogManager.GetLogger <TextFileLogger>("testlog"));
            LogManager.DestroyLogger(someLogger);
            Assert.IsNull(LogManager.GetLogger <TextFileLogger>("testlog"));

            FileBackedLogger externalLogger = null;

            try
            {
                externalLogger =
                    new FileBackedLogger(new LogConfiguration("external", LogType.Text, LogManager.DefaultSubscriptions)
                {
                    Directory = "."
                }, DateTime.UtcNow);
                LogManager.DestroyLogger(externalLogger.Logger);
                Assert.Fail();
            }
            catch (ArgumentException) { }
            finally
            {
                externalLogger?.Dispose();
            }
            LogManager.Shutdown();
        }
        public void LogWrangling()
        {
            LogManager.Start();
            LogManager.SetConfiguration(""); // wipe any config

            Assert.IsNotNull(LogManager.ConsoleLogger);
            try
            {
                LogManager.DestroyLogger(LogManager.ConsoleLogger);
                Assert.Fail();
            }
            catch (ArgumentException) { }

            IEventLogger someLogger = LogManager.CreateTextLogger("testlog");
            Assert.IsNotNull(someLogger as TextFileLogger);
            Assert.AreSame(someLogger, LogManager.GetFileLogger("testlog"));
            LogManager.DestroyLogger(someLogger);
            Assert.IsNull(LogManager.GetFileLogger("testlog"));

            FileBackedLogger externalLogger = null;
            try
            {
                externalLogger = new FileBackedLogger("external", ".", LoggerType.TextLogFile,
                                                      LogManager.DefaultFileBufferSizeMB,
                                                      1, FileBackedLogger.DefaultFilenameTemplate,
                                                      false);
                LogManager.DestroyLogger(externalLogger.Logger);
                Assert.Fail();
            }
            catch (ArgumentException) { }
            finally
            {
                if (externalLogger != null)
                {
                    externalLogger.Dispose();
                }
            }
            LogManager.Shutdown();
        }