框架——日誌框架——logback——核心流程

第一步: Get the filter chain

觸發過濾器,如果過濾器返回FilterReply.DENY,拋棄logging request;返回FilterReply.NEUTRAL,繼續執行下一個過濾器;返回FilterReply.ACCEPT,忽略之後的過濾器,進入下一步。

 

第二步: Apply the basic selection rule

比較logging request的level與Logger對象的level。 Request level < logger level,則logging request被丟棄。

 

第三步: Create a LoggingEvent Object

創建LoggingEvent對象,這個步驟類似於前端觸發事件流程,它的作用與前端Event對象的作用是相同的,封裝請求的信息。

 

第四步: Invoking Appender

觸發Logger中Appender對象的doAppender方法,方法的參數爲LoggingEvent。

 

第五步: Formatting the output

Appender對象依賴Layout對象,此時觸發Appender中的Layout對象的doLayout方法,參數爲LoggingEvent。它會將LoggingEvent對象轉換爲字符串。

 

第六步: Sending out the LoggingEvent

將返回的字符串寫入到各個終端。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章