/// <summary> /// Setups the logger configuration. Can be used instead of loading log4net.config file /// </summary> public static void SetupLogger() { Hierarchy hierarchy = (Hierarchy)LogManager.GetRepository(); PatternLayout patternLayout = new DynamicPatternLayout(); patternLayout.ConversionPattern = "%date{dd MMM yyyy HH:mm:ss} [%thread] %level - %message %exception %newline"; patternLayout.ActivateOptions(); RollingFileAppender roller = new RollingFileAppender { // appends the log into same file AppendToFile = true, File = @"DeployLogs\\Deploylog.log", Layout = patternLayout, MaxSizeRollBackups = 1000, RollingStyle = RollingFileAppender.RollingMode.Date, StaticLogFileName = false }; roller.ActivateOptions(); hierarchy.Root.AddAppender(roller); MemoryAppender memoryAppender = new MemoryAppender(); memoryAppender.ActivateOptions(); hierarchy.Root.AddAppender(memoryAppender); hierarchy.Root.Level = Level.All; hierarchy.Configured = true; }
public static void Initialize(LoggerConfiguration configuration = null) { if (configuration == null) { configuration = new LoggerConfiguration(); } Hierarchy hierarchy = (Hierarchy)LogManager.GetRepository(); DynamicPatternLayout pattern = new DynamicPatternLayout(); pattern.Header = "%newline" + "%date Application started..." + "%newline"; if (String.IsNullOrEmpty(configuration.LogPatternLayout)) { pattern.ConversionPattern = "%date %-5level [%logger::%M]: %message%newline"; } //patternLayout.ConversionPattern = "[%level] [%M] [%class]%newline[%date]: %message%newline%exception"; //patternLayout.ConversionPattern = "%newline[%level] [%M] [%class]%newline[%date]: %message%newline%exception"; else { pattern.ConversionPattern = configuration.LogPatternLayout; } pattern.Footer = "%date Application ended..." + "%newline"; pattern.ActivateOptions(); if (configuration.EnableRollingFileAppender) { RollingFileAppender fileAppender = CreateRollingFileAppender(pattern); hierarchy.Root.AddAppender(fileAppender); } if (configuration.EnableColoredConsoleAppender) { ColoredConsoleAppender consoleAppender = CreateConsoleAppender(pattern); hierarchy.Root.AddAppender(consoleAppender); } if (configuration.EnableMemoryAppender) { MemoryAppender memory = new MemoryAppender(); memory.ActivateOptions(); hierarchy.Root.AddAppender(memory); } hierarchy.Configured = true; #if DEBUG hierarchy.Root.Level = Level.Debug; #else hierarchy.Root.Level = Level.Info; #endif }
public void ConfigureLayout_WithAttribute_ShouldSetConversionPattern() { // Arrange var attribute = new DynamicPatternLayoutAttribute() { Pattern = "%test" }; var layout = new DynamicPatternLayout(); // Act sut.ConfigureLayout(layout, attribute); // Assert Assert.AreEqual(attribute.Pattern, layout.ConversionPattern); }