Index: DefaultLoggerFactory.cs =================================================================== --- DefaultLoggerFactory.cs (revision 441808) +++ DefaultLoggerFactory.cs (working copy) @@ -73,11 +73,11 @@ /// must be returned. /// /// - public Logger CreateLogger(string name) + public Logger CreateLogger(ILoggerRepository repository, string name) { if (name == null) { - return new RootLogger(Level.Debug); + return new RootLogger(repository.LevelMap.LookupWithDefault(Level.Debug)); } return new LoggerImpl(name); } Index: Hierarchy.cs =================================================================== --- Hierarchy.cs (revision 441808) +++ Hierarchy.cs (working copy) @@ -239,7 +239,7 @@ if (m_root == null) { // Create the root logger - Logger root = m_defaultFactory.CreateLogger(null); + Logger root = m_defaultFactory.CreateLogger(this, null); root.Hierarchy = this; // Store root @@ -425,8 +425,8 @@ /// override public void ResetConfiguration() { - Root.Level = Level.Debug; - Threshold = Level.All; + Root.Level = LevelMap.LookupWithDefault(Level.Debug); + Threshold = LevelMap.LookupWithDefault(Level.All); // the synchronization is needed to prevent hashtable surprises lock(m_ht) @@ -703,7 +703,7 @@ Object node = m_ht[key]; if (node == null) { - logger = factory.CreateLogger(name); + logger = factory.CreateLogger(this, name); logger.Hierarchy = this; m_ht[key] = logger; UpdateParents(logger); @@ -720,7 +720,7 @@ ProvisionNode nodeProvisionNode = node as ProvisionNode; if (nodeProvisionNode != null) { - logger = factory.CreateLogger(name); + logger = factory.CreateLogger(this, name); logger.Hierarchy = this; m_ht[key] = logger; UpdateChildren(nodeProvisionNode, logger); Index: ILoggerFactory.cs =================================================================== --- ILoggerFactory.cs (revision 441808) +++ ILoggerFactory.cs (working copy) @@ -61,6 +61,6 @@ /// must be returned. /// /// - Logger CreateLogger(string name); + Logger CreateLogger(ILoggerRepository repository, string name); } }