log4net配置学习 之 日志等级

Logger hierarchy(层次级别)ide

 

Logger都是已经命名的实体。ui

 

Logger的名称区分大小写并遵循如下规则:.net

一、若是A logger的名称若是是B logger名称的前缀(经过“.”链接),则说A logger是B logger的祖父级。日志

二、若是A logger的名称和B logger的名称之间不存在其余的logger名称,则A logger是B logger的父级。blog

        例子:A logger名称为“Foo.Bar”,B logger名称为“Foo.Bar.Baz”,A为B的父级。名称为“System”的logger是名称为“System.Text.StringBuilder”的祖父级。继承

Root logger位于logger层次级别中的顶级。get

 

它有例外的三条规则: it

一、Root logger老是存在的。class

二、Root logger不能经过名称或取。配置

三、Root logger 有一个默认的Level 值为 Debug。

 

Logger 能够经过log4net.LogManager类的静态方法GetLogger获取。

Level值:ALL/DEBUG/INFO/WARN/ERROR/FATAL/OFF

 

Level 继承规则:若是一个logger没有定义Level,它的Level值将从它的父级(定义了Level)继承。

 

日志纪录请求经过调用logger实例的输出方法实现。

这些输出方法有Debug,Info,Warn,Error和Fatal。

经过定义,输出方法决定了日志纪录请求的Level。

例如,log是一个logger实例,那么语句log.Info(“..”)的日志纪录请求Level为INFO。 若是日志纪录请求的Level比logger自己定义(或继承)的Level高,则请求是可行的,不然不可行。

简单规则:若是日志记录请求的Level为L,logger自己定义(或继承)Level为K,当L>=K时,日志纪录请求是可行的。

 

Level级别:DEBUG <INFO<WARN<ERROR<FATAL

 

经过名称,调用log4net.LogManager.GetLogger方法,能够获取同一个logger的实例引用。

这样在配置了一个logger后,不用在代码中传递引用而能够获取同一个logger的引用了。

与生物上的亲子关系(父亲老是先于孩子)基本相反,在log4net 里,logger能够被建立和配置成任何顺序。

特别的是,一个父级logger可能比子级logger后实例化,但却能够在子级中查找到。


引用:http://blog.csdn.net/hu8hong9/article/details/2799199

相关文章
相关标签/搜索