在ASP.NET MVC中使用Log4Net进行多种HttpCode日志的记录
来源:互联网 发布:淘宝pc端链接转手机端 编辑:程序博客网 时间:2024/05/14 19:47
参考了以下两篇文章
MVC扩展Filter,通过继承HandleErrorAttribute,使用log4net或ELMAH组件记录服务端500错误、HttpException、Ajax异常等
ASP.NET MVC中注册Global.asax的Application_Error事件处理全局异常
总体设计
错误类型
错误入口
处理方法
Controller中的错误
(已经考虑到的)
在try-catch中记录日志
显示HttpCode500错误视图
Controller中的错误
(未考虑到的)
在继承HandleErrorAttribute的类中记录日志
显示HttpCode500错误视图
url地址错误
在全局处理Application_Start方法中处理
显示HttpCode404错误视图
其他错误
在全局处理Application_Start方法中处理
显示其他错误视图
第一步:在MVC中使用Log4Net记录日志:
1. 创建log4net.config.xml文件,配置Log4Net的节点。
2. 在Global.asax文件Application_Start()方法中添加业务功能,该业务来读取Log4Net配置文件内容,从而将配置文件与我们的应用程序联系起来(Log4Net注入到我们的应用程序中)。
3. 在Common下新建一个类ErrRecorder,初始化ILog,进行日志记录。以后凡是程序中想使用日志记录时,直接在try-catch中使用这个类下的WriteError()方法。
这种方法完全是自定义记录日志,所有错误的捕捉都是自己try-catch的。第二步:
1. 自己建一个Attribute类,继承错误异常过滤器HandleErrorAttribute。
重写方法OnException(ExceptionContext filterContext)。 filterContext就是异常上下文 在这个方法中捕获异常信息。
2. 添加到全局过滤器中,filters.Add(new HandleErrorAttribute()) 写我们自己的异常处理信息属性
3. 在Global.asax全局文件的Application_Start()方法中使用Log4Net进行日志记录(Log4Net是线程安全的)
第三步:
在Application_Start中添加Application_Error事件。这个事件是在OnException()事件执行完成之后执行的,可以用来处理Filter遗漏的事件,如没有找到网页的404错误等
- 在ASP.NET MVC中使用Log4Net进行多种HttpCode日志的记录
- asp.net mvc中加入log4net记录错误日志
- asp.net Web项目中使用Log4Net进行错误日志记录
- asp.net Web项目中使用Log4Net进行错误日志记录
- asp.net Web项目中使用Log4Net进行错误日志记录
- 译:在ASP.NET MVC5中如何使用Apache log4net 类库来记录日志
- 在ASP.NET MVC5中如何使用Apache log4net 类库来记录日志
- 在.Net程序中使用log4net记录日志(示例)
- .net项目中使用log4net记录日志
- ASP.NET MVC中使用Log4Net
- 如何使用Apache log4net库与ASP.NET MVC 5日志记录
- 在asp.net中使用 log4net 笔记
- 在asp.net中使用 log4net 笔记
- 在asp.net中使用 log4net 笔记
- 在asp.net中使用 log4net 笔记
- 在asp.net中使用 log4net 笔记
- 在ASP.NET的3层中使用log4net
- Log4Net异常日志记录在asp.net mvc3.0的应用
- 04 struts.xml配置中常用配置项解析
- C语言笔记(五)
- uname
- CodeIgniter 源代码解析
- 【Android学习之】深入理解JNI
- 在ASP.NET MVC中使用Log4Net进行多种HttpCode日志的记录
- Linux的进程/线程间通信方式总结
- 电脑默认F1F2F3F4F5F6功能不管用,必须要按Fn这个键,怎么不按?直接按f1-f12
- java中的事件机制
- React-native 关于 android真机解决出现连不上服务器
- 【bzoj1609】【Usaco2008 Feb】Eating Together 题解&代码
- 开源深度学习库对比总结
- 知识点总结_(做内容管理系统之后总结1)
- uname d