2
|
Nick Haslam · 技术社区 · 16 年前 |
![]() |
1
4
不确定这是否是“最佳实践”,但最常见的方法是使用 log4net . |
![]() |
2
2
使用 log4net 或 Enterprise Library Logging . 我还添加了一个HTTP模块,它记录所有未处理的错误(过滤掉404个错误)。 在执行全局错误处理程序时,您可能希望开发某种方法来了解您已经记录了一个错误。如果您希望将错误记录到离错误源更近的位置,从而允许您在出错的内容中包含更多上下文,则会发生这种情况。 在我的例子中,当我记录任何错误时,我在异常的数据收集中添加了一个项目。然后,我的全局错误处理程序检查所有异常对象,以验证我们没有记录任何异常对象。 |
![]() |
3
1
如果您运行的是ASP.NET 2.0或更高版本,最好不要做任何事情。默认情况下,ASP.NET运行状况监视将异常记录到应用程序事件日志中。只需使用eventvwr.exe并从“asp.net”中查找警告。它记录的信息非常完整。 当我说“什么都不做”时,我的意思是,如果你只想记录异常,就不要捕获它们。如果愿意,您可以设置一个自定义错误页,但要确保不会在顶层捕获异常。 |
![]() |
4
1
|
![]() |
5
0
如果您可以获得该站点的global.asax,那么在global.asax的“application_error”部分中执行类似的操作 作为新异常()的dim ex ex=server.getLastError().getBaseException()) 作为新的通用函数的dim g asendemailFunction(例如message.toString()&ex.source.toString()&ex.stacktrace.toString()) 这将获取应用程序的每个错误并向您发送所有详细信息-您需要创建一个asendemailfunction(),它只向您发送一封包含内容的电子邮件 (你可以做得比这更好,但我直接在这个盒子里打) |
![]() |
6
0
用于日志记录的最常见库是企业库日志块或log4net: -企业库日志块文章: http://www.codeproject.com/KB/architecture/GetLoggingWithEntLib.aspx - Log4NET: http://www.ondotnet.com/pub/a/dotnet/2003/06/16/log4net.html 干杯 |
![]() |
7
0
凌乱:当它出现时,抓住它(假设你可以?)把尽可能多的数据放到页面上。把它放在HTML注释中,这样用户就看不到它了。比如:
几乎是乱七八糟的:查找trace.writeline之类的东西。您可以在ASP.NET中启用跟踪,它允许您转到特定的页面(_trace.axd?)并获取该页面加载的所有消息的转储。我还没真正用过,但它确实有用。 稍微简单一点(因为这似乎是暂时的事情):使用trace.writeline输出内容,如果您有物理访问权,可以在服务器上运行debugview(来自Microsoft)。然后,您可以捕获此调试输出(此函数上的核心win32 API是outputDebugString-我认为.NET调用是debug.writeline) 更好:log4net。设置它以便您可以在任何地方使用。大多数时候把它放在“错误”上,但在这种情况下,使用“调试”直到找到解决方案。 我要3分,然后4分。或者现在是3,下次清理代码库时是4。 :) |
![]() |
Karl · 如何引发PrintPage的事件? 2 年前 |
![]() |
Daniel · LINQ从列表的dataTable中提取部分匹配 3 年前 |
![]() |
limelatte · 如何在datagridview中屏蔽特定列? 3 年前 |
![]() |
Orsi · 选择嵌套列表的最大值和最小值。网 3 年前 |
![]() |
D T · 如何为Excel Com设置公式? 3 年前 |
![]() |
Lenin · 将数组中的每个元素与另一个数组中的相应元素相乘 3 年前 |