【问题标题】:Error Logging: Source Error and Source File错误记录:源错误和源文件
【发布时间】:2009-05-07 21:11:56
【问题描述】:

在开发 .Net Web 应用程序时,如果生成运行时错误,它会显示一些我在 Exception 类中找不到的“额外”调试信息。

它显示了一个“源错误”部分,其中显示了一段代码摘录,其中行号显示了错误的确切生成位置,并显示了“源文件”,即引发异常的实际页面。

能否以编程方式收集和记录这些信息?

仅供参考,我没有使用错误记录框架,该应用程序只是捕获 Global.asax.cs 文件中的错误并将异常的内容写入数据库表。也许这就是我出错的地方。如果我需要采用一个框架来支持高质量的日志记录,请告诉我。

【问题讨论】:

    标签: .net error-handling


    【解决方案1】:

    您应该查看ELMAH 项目,该项目将允许您自动捕获和记录所有未处理的异常,包括记录黄屏死机。

    对于每个错误,除了记录 YSOD 和堆栈跟踪,它还会记录服务器变量,以便您查看 http 引用、请求的页面等信息。

    它可以在各种数据库或 xml 文件中记录异常,并在记录时向您发送电子邮件。它可以集成到正在运行的 .Net Web 应用程序中,而无需更改一行代码,只需在 web.config 中添加条目

    您还可以以编程方式在日志中记录条目,以便在您想要捕获异常但仍将其记录下来。

    详细信息请参见ELMAH 网站和getting started guide on the Elmah.io site

    【讨论】:

    【解决方案2】:

    ELMAH 是非常酷的、插入式的、未处理的错误记录组件。它甚至可以让您看到黄屏死机(包括您所追求的信息)以及发布数据。

    【讨论】:

      【解决方案3】:

      引发错误的页面应该在 Exception.StackTrace 属性中

      http://msdn.microsoft.com/en-us/library/system.exception.stacktrace.aspx

      我不确定你提到的 code-sn-p 来自哪里。

      【讨论】:

        猜你喜欢
        • 2017-04-10
        • 1970-01-01
        • 2016-10-12
        • 1970-01-01
        • 2022-12-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多