【转】ABP源码分析八:Logger集成
ABP使用Castle日志記錄工具,并且可以使用不同的日志類庫,比如:Log4Net, NLog, Serilog... 等等。對于所有的日志類庫,Castle提供了一個通用的接口來實現(xiàn),我們可以很方便的處理各種特殊的日志庫,而且當業(yè)務需要的時候,很容易替換日志組件。
Logger功能模塊涉及到的接口和類不多,相對容易理解。
?
LogSeverity:?枚舉類型,定義了5個日志級別:Info,Debug,Warn,Error, Fatal.
?
IHasLogSeverity:封裝了LogSeverity。UserFriendlyException,AbpValidationException實現(xiàn)了這個接口。Loghelper在對exeption做log的時候可以方便的通過實現(xiàn)了IHasLogSeverity的exeption的實例獲取到logSeverity。然后根據(jù)logSeverity的級別log.
?
Loghelper:?靜態(tài)類。調(diào)用logger實例(實現(xiàn)Castle的Ilogger接口)完成log操作。
?
LoggerExtensions:?擴展了Castle的Ilogger接口的方法,封裝更便捷的方法供Loghelper調(diào)用。
?
?
在具體的web項目的application_start方法中注入logger實例。以下是注入log4net代碼
?
返回ABP源碼分析系列文章目錄
總結(jié)
以上是生活随笔為你收集整理的【转】ABP源码分析八:Logger集成的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【转】TechEd第一课:新一代关系管理
- 下一篇: 理财产品一般买多久?一文了解清楚!