环境准备web
数据初始化apache
咱们知道在web项目的入口在web.xml中。因此咱们得加入log4j的监听器和过滤器json
<listener>
<listener-class>org.apache.logging.log4j.web.Log4jServletContextListener</listener-class>
</listener>
<filter>
<filter-name>log4jServletFilter</filter-name>
<filter-class>org.apache.logging.log4j.web.Log4jServletFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>log4jServletFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>ERROR</dispatcher>
</filter-mapping>复制代码
到这里咱们log4j就已经配置成功了。可是在实际开发中发现没有上面的监听器和过滤器也是能够的。因为时间问题没有研究缘由。大概网上查阅了一下好像是log4j源码中有默认的配置。咱们上面没有指定具体的配置文件的地址在哪,log4j就会读取jar中默认的配置。系统中选择的默认配置文件有如下几种:api
log4j2配置详解bash
logger等级app
举例ui
像上面那样咱们已经配置了不少Logger了。每一个Logger都有本身的名字。咱们在代码中这样使用
`private static final Logger bossRequestTeletextLogger = LogManager.getLogger("bossRequestTeletextLogger");`
意思就是bossRequestTeletxtLogger将使用咱们最后一个Logger,该Logger等级是info等级的。存储采用的是`teletextLoggerFile`存储到文件中的。复制代码