Loggers are named entities. Logger names are case-sensitive and they follow the hierarchical naming rule:
|
For example, the logger named "com.foo"
is a parent
of the logger named "com.foo.Bar"
. Similarly,
"java"
is a parent of "java.util"
and an
ancestor of "java.util.Vector"
. This naming scheme
should be familiar to most developers.
The root logger resides at the top of the logger hierarchy. It is exceptional in two ways:
- it always exists,
- it cannot be retrieved by name.
This observation had previously led us to
choose category
as the central concept of the
package. However, since log4j version 1.2, Logger
class
has replaced the Category
class.
log4j的Logger是大小写敏感的,且遵从名称继承规则.
名称继承规则为:
类似java的package.“com.foo
”为“com.foo.Bar
”的父类,为“com.foo.Bar.aeo
”的祖先,在这个继承关系中,倘若“com.foo.Bar
”不作为Logger,则“com.foo
”直接为“com.foo.Bar.aeo
”的父类。log4j的顶级父类为root.
root永远存在且不能通过名称获取。子类继承父类的设置。
log4j 从1.2版本以后,使用 “Logger
”代替 “Category
” 作为Logger 的root。
Logger root = Logger.getRootLogger();
Logger的级别为
TRACE,DEBUG,INFO,WARN,ERROR,FATAL
本文介绍了Log4j中Logger的命名规则及层级关系。Logger遵循类似Java包的命名方式,支持层级结构,如com.foo是com.foo.Bar的父Logger。Log4j从1.2版开始采用Logger替代Category作为核心概念。
2956

被折叠的 条评论
为什么被折叠?



