log4net结合异常过滤器实现日志功能

博文1

定义日志的输出媒介
文件形式记录日志
<appender-ref ref="LogFileAppender"  />
// 注意下面的语句一定要加上,指定log4net使用.config文件来读取配置信息
// 如果是WinForm(假定程序为MyDemo.exe,则需要一个MyDemo.exe.config文件)
// 如果是WebForm,则从web.config中读取相关信息
[assembly: log4net.Config.XmlConfigurator(Watch =  ``true` `)]
创建日志记录组件实例
ILog log=log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
记录错误日志
log.Error("error",new Exception("发生了一个异常"));

博文2 log4net配置与自定义一个异常过滤器

参考文章地址

:https://blog.csdn.net/qq_45701634/article/details/108343004

aop 将公共逻辑放到一个单独地方,

介绍过滤器
IAuthorizationFIlter  检查当前用户是否有Action权限,在Action执行前执行OnAuthorization方法。
IActionFilter  
每个action执行前执行onActionExecuting方法,执行后执行OnActionExecuted方法
IExceptionFilter  当Action执行发生为吹了异常时候执行OnException方法。
定义的类可以在Global中GlobalFilters.Add(new ***Filter()) 添加为全局
1、安装程序集
2、在Web.config添加节点
<configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections>

3、在Global文件中启动
			log4net.Config.XmlConfigurator.Configure(); //启动log4net
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

关于Conversion引出的材料

https://blog.csdn.net/liuxiao723846/article/details/52126936

%p 输出日志信息优先级

%d 输出日志时间点的日期或时间

%t 产生该日志事件的线程名

1、创建一个异常过滤器
在appstart下,新建一个类继承IExceptionFilter接口,实现其中的OnException方法
		public class ZSZExceptionFilter:IExceptionFilter
    	{
        	private static ILog log = LogManager.GetLogger(typeof(ZSZExceptionFilter)); //声明Log4NET对象,建议一个类就声明一个ILog对象

        	public void OnException(ExceptionContext filterContext)
        	{
            log.ErrorFormat("出现未处理的异常{0}",filterContext.Exception);
        	}
        }



2、把自定义的类添加到Global文件
GlobalFilters.Filters.Add(new App_Start.ZSZExceptionFilter());//增加自定义异常处理器

博文3

https://blog.csdn.net/lincongqiong819/article/details/104981618

很详细,照着操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值