如何记录500个内部服务器错误

本文关键字:500个 内部 服务器 错误 记录 何记录 | 更新日期: 2023-09-27 18:20:45

我的一个网页正在给我一个:

GET url_plus_query_string_go_here 500 (Internal Server Error)

错误类型。我如何设置页面/服务器,以便记录这些错误,以了解更多关于它们的信息以及它们发生的原因?

如何记录500个内部服务器错误

您可以使用ELMAH轻松地记录所有异常。

它为ASP.NET应用程序添加了一个消息处理程序,该程序会自动将异常记录到数据库中,并提供查看异常的web界面。

除了设置数据库和调整web.config之外,您不必更改应用程序中的任何内容。特别是,您不必向所有控制器添加try-catch处理程序。

您可以创建一个Log.cs类,并使用write方法将异常记录到文本文件中。现在在代码中调用这个方法(例如在catch块中)。使用以下代码创建一个类log.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace TestApp
{
public class Log
{
    protected static string GetFileName()
    {
        return "log.txt";
    }
    public Log()
    {
    }
    public static void Write(string message)
    {
        System.IO.File.AppendAllText(GetFullFilePath(), message + Environment.NewLine);
    }

    public static string ReadAll()
    {
        return System.IO.File.ReadAllText(GetFullFilePath());
    }
    private static string GetFullFilePath()
    {
        return Path.Combine(AppDomain.CurrentDomain.BaseDirectory, GetFileName());
    }
}
}

现在应用以下代码来插入您的异常或任何其他您想在运行时跟踪的内容。我在这里只显示catch块,但您可以在代码中的任何位置使用它。

    catch (Exception ex)
        {
          Log.Write(DateTime.Now + "  " + ex.Message + "  Something relevant string");
        }