溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

ASP.NET中怎么記錄錯誤日志

發(fā)布時間:2021-07-16 13:58:39 來源:億速云 閱讀:158 作者:Leah 欄目:開發(fā)技術(shù)

本篇文章給大家分享的是有關(guān)ASP.NET中怎么記錄錯誤日志,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

首先,我先寫一個靜態(tài)方法用于將錯誤信息記錄到文本文件,這里是將錯誤信息記錄到服務(wù)器上的Error文件夾下

代碼如下:

using System.Globalization;

    /// <summary>
    /// 用于將錯誤信息輸出到txt文件
    /// </summary>
    /// <param name="errorMessage">錯誤詳細(xì)信息</param>
    public static void WriteError(string errorMessage)
    {
        try
        {
            string path = "~/Error/" + DateTime.Today.ToString("yyMMdd") + ".txt";
            if (!File.Exists(System.Web.HttpContext.Current.Server.MapPath(path)))
            {
                File.Create(System.Web.HttpContext.Current.Server.MapPath(path)).Close();
            }
            using (StreamWriter w = File.AppendText(System.Web.HttpContext.Current.Server.MapPath(path)))
            {
                w.WriteLine("\r\nLog Entry : ");
                w.WriteLine("{0}", DateTime.Now.ToString(CultureInfo.InvariantCulture));
                w.WriteLine(errorMessage);
                w.WriteLine("________________________________________________________");
                w.Flush();
                w.Close();
            }
        }
        catch (Exception ex)
        {
            WriteError(ex.Message);
        }
    }

在網(wǎng)站Global.asax文件的Application_Error中加入如下代碼

復(fù)制代碼 代碼如下:


void Application_Error(object sender, EventArgs e)
    {
        // 在出現(xiàn)未處理的錯誤時運(yùn)行的代碼
        Exception objErr = Server.GetLastError().GetBaseException();
        //記錄出現(xiàn)錯誤的IP地址
        string strIP = Request.UserHostAddress;
       string err = "Ip【" + strIP + "】" + Environment.NewLine + "Error in【" + Request.Url.ToString() +
                          "】" + Environment.NewLine + "Error Message【" + objErr.Message.ToString() + "】";
        //記錄錯誤
        FN.WriteError(err);
    }


配置Web.Config文件

復(fù)制代碼 代碼如下:


<system.web>
    <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
     <!--可以指定其他錯誤頁面...-->
    </customErrors>
    </system.web>


建立一個GenericErrorPage.htm文件,用于使用者出現(xiàn)錯誤時呈現(xiàn)的錯誤頁面。

以上就是ASP.NET中怎么記錄錯誤日志,小編相信有部分知識點(diǎn)可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI