/// <summary>
/// 捕捉异常
/// </summary>
protected void Application_Error()
{
// 获得前一个异常的实例
var ex = Server.GetLastError().GetBaseException();
{
var sbError = new StringBuilder();
sbError.AppendFormat("Url OriginalString:{0}\r\n", Request.Url.OriginalString);
sbError.AppendFormat("URL PathAndQuery:{0}\r\n", Request.Url.PathAndQuery);
sbError.AppendFormat("URL.ToString():{0}\r\n", Request.Url.ToString());
sbError.AppendFormat("URL AbsoluteUri:{0}\r\n", Request.Url.AbsoluteUri);
var query = (string.IsNullOrEmpty(Request.Url.Query) ? "" : "?" + Request.Url.Query);
sbError.AppendFormat("Query:{0}\r\n", query);
sbError.AppendFormat("发生时间:{0}\r\n", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss ffff"));
sbError.AppendFormat("异常IP:{0}\r\n", PcHelper.GetInstance.GetIp());
sbError.AppendFormat("异常电脑名称:{0}\r\n", PcHelper.GetInstance.GetUserHostName());
sbError.AppendFormat("浏览器:{0}\r\n", PcHelper.GetInstance.GetBrowser());
var urlRefer = string.Empty;
if (Request.UrlReferrer != null)
{
urlRefer = Request.UrlReferrer.OriginalString;
}
sbError.AppendFormat("URLRefer OriginalString:{0}\r\n", urlRefer);
sbError.AppendFormat("错误时间:{0}\r\n", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss ffff"));
sbError.AppendFormat("错误文件:{0}\r\n", ex.Source);
sbError.AppendFormat("错误信息:{0}\r\n", ex.Message);
sbError.AppendFormat("引发错误的方法:{0}\r\n", ex.TargetSite);
sbError.AppendFormat("错误堆栈:{0}\r\n", ex.StackTrace); // 将错误记录到日志中
FileHelper.GetInstance.WriteToFile(Server.MapPath(CommonConst.ErrorLogPath), sbError.ToString());
}
} 补充
sbException.AppendFormat("发生时间:{0}", DateTime.Now);
            sbException.AppendFormat("错误描述:{0}", ex.Message.Replace("\r\n", ""));
            sbException.AppendFormat("错误对象:{0}", ex.Source);
            sbException.AppendFormat("错误页面:{0}", HttpContext.Current.Request.Url);
            sbException.AppendFormat("浏览器IE:{0}", HttpContext.Current.Request.UserAgent);
            sbException.AppendFormat("服务器IP:{0}", NetHelper.GetIPAddress());

Application_Error异常处理的更多相关文章

  1. Global.asax文件说明

    Global.asax是我们的底层文件,第一次的IIS请求都会先去执行它里面的文件,所以学会它里面的函数是非常有必要的.而且我们总是忽略这里的知识点,总觉得这是不必须的,其实我们错了,这里才是程序的根 ...

  2. C#异常处理经验(原则与方法)

         本文是异常处理经验性的文章,其实跟C#关系也不大.比较适合刚刚熟悉异常语法,而缺乏实战的读者.当然,经验老练的读者也可指出不足.给予意见.补充说明,一起完善文章,分享更多知识与经验.   1 ...

  3. 从零开始编写自己的C#框架(20)——框架异常处理及日志记录

    最近很忙,杂事也多,所以开发本框架也是断断续续的,终于在前两天将前面设定的功能都基本完成了,剩下一些小功能遗漏的以后发现再补上.接下来的章节主要都是讲解在本框架的基础上进行开发的小巧. 本框架主要有四 ...

  4. Asp.Net事务和异常处理:

    Asp.Net事务和异常处理: 一.什么是事务处理? 事务处理是一组组和成逻辑工作单元的数据库操作,虽然系统中可能会出错,但事务将控制和维护每个数据库的一致性和完整性. 如果在事务过程中没有遇到错误, ...

  5. ASP.NET MVC中的统一化自定义异常处理

    当ASP.NET MVC程序出现了异常,怎么处理更加规范? 1. 最简单的方法是设置<customErrors/>节点 <customErrors>节点用于定义一些自定义错误信 ...

  6. .NET MVC全局异常处理(一)

    目录 .NET MVC全局异常处理 IIS配置 静态错误页配置 .NET错误页配置 程序设置 全局异常配置 .NET MVC全局异常处理 一直知道有.NET有相关的配置,但没有实际做过,以为改下设定就 ...

  7. SmartStore.Net、NopCommerce 全局异常处理、依赖注入、代码研究

    以下是本人最近对NopCommerce和SmartStore.net部分代码的研究和总结,主要集中于:依赖注入.异常处理.对象映射.系统缓存.日志这些方面,供大家参考. NOP 3.8 /// < ...

  8. 转:异常处理之ThreadException、unhandledException及多线程异常处理

    转载自:http://www.cnblogs.com/levin9/articles/2319251.html 一:ThreadException和unhandledException的区别 处理未捕 ...

  9. ASP.NET MVC异常处理方案

    异常处理是每一个系统都必须要有的功能,尤其对于Web系统而言,简单.统一的异常处理模式尤为重要,当打算使用ASP.NET MVC来做项目时,第一个数据录入页面就遇到了这个问题. 在之前的ASP.NET ...

随机推荐

  1. Notice: Undefined offset 的解决方法

    Notice: Undefined offset: 1 in D:\wwwroot\wr\askseo\404.php on line 5 Notice: Undefined offset: 2 in ...

  2. java List 简单使用

    Student类 class Student{ String name; String pwd; public Student(){} public Student(String name, Stri ...

  3. [转]Hibernate不能自动建表解决办法及Hibernate不同数据库的连接及SQL方言

    最近开始学Hibernate,看的是李刚的那本<轻量级java ee企业应用实战>.头一个hibernate程序,我原原本本的按照书上例子写下来,同时只是改动了些mysql的连接参数,并且 ...

  4. extjs 常见的小问题

    今天,小白就来总结下extjs的使用的时候的各种小问题或者说是小技巧.希望能够给各位刚接触extjs的朋友一点帮助. 1.当存在store的各种组件的store的autoload属性为false的时候 ...

  5. JDBC工作模块

    jdbc-->java数据库连接   的简称 JDBC工作模块 加载jdbc驱动 与数据库连接 发送sql语句,得到返回结果 处理返回结果 释放资源

  6. BeanFactory

            Spring容器,最基本的接口就是BeanFactory 负责创建,配置,管理bean 它有一个子接口ApplicationContext并将功能扩展.         理论上bean ...

  7. android_demo01

    /layout/activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/ ...

  8. ios pyudaren

    ed2k://|file|%E9%A1%B9%E7%9B%AE%E6%8D%95%E9%B1%BC%E8%BE%BE%E4%BA%BA01.rmvb|67044010|9e013987298d7900 ...

  9. paper 92:图像视觉博客资源2之MIT斯坦福CMU

    收录的图像视觉(也包含机器学习等)领域的博客资源的第二部分,包含:美国MIT.斯坦福.CMU三所高校 1)这些名人大家一般都熟悉,本文仅收录了包含较多资料的个人博客,并且有不少更新,还有些名人由于分享 ...

  10. php 下载保存文件保存到本地的两种方法

    第一种: 1 <? ?> 或 <?php //下载文件保存到本地//www.jbxue.comfunction downfile($fileurl){ob_start(); $fil ...