閱讀516 返回首頁    go 魔獸


網頁異常分析報告

 

當項目開發完成後交由客戶使用,客戶在操作中發生了異常,這時候我們該怎麼辦呢?

也許客戶會給你打電話告訴你,但有時候你根本就搞不清楚客戶在說什麼。

也許你可以遠程訪問客戶桌麵,但網速慢的時候怎麼辦呢?

....

今天告訴大家一個簡單的產生異常報告的方法   隻用三步  輕鬆搞定

 

第一步:

找到項目中的 Global.asax 文件(這個文件是項目自動產生的)
在Application_Start() 方法的上邊 寫入


string day = DateTime.Now.Day.ToString();
StringBuilder sb = new StringBuilder();

 

第二步:
Application_Error()方法內部寫入

 if (HttpContext.Current.AllErrors.Length > 0)
            {
                string DayTime = DateTime.Now.Day.ToString();

                if (DayTime.Equals(day))
                {
              
                    log4j();
                }
                else
                {
                    log4j();
                }
            }

 

 

第三步:

寫log4j()方法

   private void log4j()
        {
            DateTime DT = DateTime.Now;
            string newday = DT.ToLongDateString().ToString();
          

            //這裏是存放文件的路徑,可以自由設置,不過路徑可別搞錯了

            string fileName = Server.MapPath("/Errors/" + newday + ".txt");

            foreach (Exception ex in HttpContext.Current.AllErrors)
            {
                string url = HttpContext.Current.Request.Url.Query;
               sb.Append(ex.Message)
                   .Append(ex.Source)
                   .Append(ex.StackTrace)
                   .Append("異常產生時間" + DateTime.Now)
                   .Append("本異常有" + Utility.CurrentUser.Name + "發起

                  .Append("來自" + HttpContext.Current.Request.Path + "頁麵")

                  .Append("截取到的參數是" + url);

            }
            System.IO.StreamWriter sw = File.AppendText(fileName);
            sw.WriteLine(sb.ToString());
            sw.Flush();
            sw.Close();
        }


好了,就這麼簡單,以後如果項目中發生異常,而客戶又說不清楚的時候,就告訴客戶,把Errors文件夾下是今天日期的那個文本發過來。當然,您親自去給客戶排除異常的時候,找到這個文件夾,那就更方便了。

 

這是一個簡單的異常報告,如果想要再詳細一點的話,請參考   https://udnz.com/Works/uolib/ 很強大的類庫,不過使用前需要引用dll和配置,看個人愛好吧。

 

原帖地址:https://blog.sina.com.cn/s/blog_6967e0820100ls8m.html

 

最後更新:2017-04-02 22:16:18

  上一篇:go JavaScript的Date對象(二)
  下一篇:go 關於phprpc測試實例