ABP源码分析八:Logger集成

ABP使用Castle日志记录工具,而且能够使用不一样的日志类库,好比:Log4Net, NLog, Serilog... 等等。对于全部的日志类库,Castle提供了一个通用的接口来实现,咱们能够很方便的处理各类特殊的日志库,并且当业务须要的时候,很容易替换日志组件。html

Logger功能模块涉及到的接口和类很少,相对容易理解。web

 

LogSeverity 枚举类型,定义了5个日志级别:Info,Debug,Warn,Error, Fatal.app

 

IHasLogSeverity:封装了LogSeverity。UserFriendlyException,AbpValidationException实现了这个接口。Loghelper在对exeption作log的时候能够方便的经过实现了IHasLogSeverity的exeption的实例获取到logSeverity。而后根据logSeverity的级别log.工具

 

Loghelper: 静态类。调用logger实例(实现CastleIlogger接口)完成log操做源码分析

 

LoggerExtensions: 扩展了CastleIlogger接口的方法,封装更便捷的方法供Loghelper调用。spa

 

 

在具体的web项目的application_start方法中注入logger实例。如下是注入log4net代码日志

 

返回ABP源码分析系列文章目录htm

相关文章
相关标签/搜索