public void CanCreateExtendedLog4NetConfigUsingStream() { ExtendedLog4netFactory factory; using (var stream = StringToStream(log4netXml)) { factory = new ExtendedLog4netFactory(stream); } var logger = factory.Create(loggerName); logger.Debug(logMessage); var logContent = GetLogContent(); Assert.AreEqual(logMessage, logContent); }
public void CreateLogger(string loggerName) { //It will create a repository for each different arg it will receive var repositoryName = "Netfox"; ILoggerRepository repository = null; var repositories = LogManager.GetAllRepositories(); foreach (var loggerRepository in repositories) { if (loggerRepository.Name.Equals(repositoryName)) { repository = loggerRepository; break; } } if (repository == null) { //Create a new repository repository = LogManager.CreateRepository(repositoryName); var hierarchy = (Hierarchy)repository; hierarchy.Root.Additivity = false; //Add appenders you need: here I need a rolling file and a memoryappender hierarchy.Root.AddAppender(this.NetfoxOutputAppender); hierarchy.Root.AddAppender(this.NetfoxFileAppender); BasicConfigurator.Configure(repository); } //Returns a logger from a particular repository; //Logger with same name but different repository will log using different appenders var logger = LogManager.GetLogger(repositoryName, loggerName); var logg = new ExtendedLog4netFactory(); this.Logger = new ExtendedLog4netLogger(logger, logg); }