log4net SDK Reference |

# Hierarchy Class

Hierarchical organization of loggers

For a list of all members of this type, see Hierarchy Members.

System.Object
log4net.Repository.LoggerRepositorySkeleton
log4net.Repository.Hierarchy.Hierarchy

[Visual Basic]
Public Class Hierarchy
Inherits LoggerRepositorySkeleton
Implements IBasicRepositoryConfigurator, IXmlRepositoryConfigurator
[C#]
public class Hierarchy : LoggerRepositorySkeleton, IBasicRepositoryConfigurator, IXmlRepositoryConfigurator

#### Thread Safety

This type is not safe for multithreaded operations.

#### Remarks

The casual user should not have to deal with this class directly.

This class is specialized in retrieving loggers by name and also maintaining the logger hierarchy. Implements the ILoggerRepository interface.

The structure of the logger hierarchy is maintained by the GetLogger method. The hierarchy is such that children link to their parent but parents do not have any references to their children. Moreover, loggers can be instantiated in any order, in particular descendant before ancestor.

In case a descendant is created before a particular ancestor, then it creates a provision node for the ancestor and adds itself to the provision node. Other descendants of the same ancestor add themselves to the previously created provision node.

#### Requirements

Namespace: log4net.Repository.Hierarchy

Assembly: log4net (in log4net.dll)

#### See Also

Hierarchy Members | log4net.Repository.Hierarchy Namespace