C#MVC捕获异常并存放到指定位置插件log4net

新酱
140
文章
36
评论
2019年5月31日12:09:37 评论 191 688字阅读2分17秒

前言

当程序运行出错后,我们并不希望用户看到错误信息,而是一个错误页面,错误信息应该存放在一个地方供我们技术人员查看。所以log4net插件就帮了我们很大忙。

引入log4net

百度网盘=>传送门,提取码为e6mu,将下载好的压缩包解压,引入dll文件到你的项目中。

准备好一个错误页面供用户查看。

Webconfig配置

在web.config文件节点configSections里添加一个log4的代码

创建log4配置节点

创建一个错误类

这里由于并发的原因,所以要用队列的形式,将错误信息先入先出保存到特定文件中,这里我用了redis分布式的队列。

/test/errors是我准备好的错误页,这个类的作用就是将错误信息入队,入队好之后就该出队了。

错误信息出队

打开Global.asax文件,在protected void Application_Start()的下面添加一行代码

由于要一直检测是否有错误信息产生,所以不可能用主线程来完成这个检测任务,这时候就要用到线程池来完成这个操作。

log4错误信息默认保存在App_Data文件夹中,若是要修改可以到log4配置节点里修改,log4压缩包中有个使用说明,还可以将错误信息保存到数据库,具体做法各位可以自己参考例子。

  • 版权声明: 发表于 2019年5月31日12:09:37
  • 转载注明:https://www.xiaorenjc.net/153.html

您必须才能发表评论!