Architecture
Main Components
下图所示,为Log4j 使用的所有类:
使用Log4j 2 API 的应用程序将从LogManager中获取特定名字的Logger。Logmanager将定位到合适(对应)的LoggerContext并从中获得Logger。如果必须创建Logger,这个Logger将与LoggerConfig所包含的如下其中一项相关联:a)与Logger有相同的名字;b)父包的名字;c)LoggerConfig的根。LoggerConfig对象是根据配置中Logger的声明创建的。LoggerConfig与实际传递LogEvent的Appender相关联。