環境準備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`存儲到文件中的。複製代碼