Application_Error异常处理

/// <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());
            }
        }

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。