ELMAH错误和经典Asp

时间:2012-01-16 16:30:41

标签: sql-server asp-classic error-handling elmah

我们已经在我们拥有的ASP.NET MVC网站上使用ELMAH进行错误记录......但我们的主网站仍然是经典的asp,我已经开始为该网站创建错误处理/日志记录结构,但是我认为如果我们能够在所有应用程序中保持错误日志记录保持一致将会很棒。我想使用相同的数据库结构......甚至可能将来自不同源应用程序的错误存储在同一个表中,然后按源进行过滤。我想也许我可以从我们的经典asp vb服务器代码调用ELMAH dll来记录错误信息。我看了一下ELMAH网站......然后我看了一下AIRBRAKE - http://airbrake.io/pages/home - 但是无法真正看到它是如何通过经典的asp网页完成的。

如果有人对此有任何经验或有任何有用的建议我会很感激...谢谢。

2 个答案:

答案 0 :(得分:3)

受比尔·马丁的回答启发,我已经整理了一个概念验证,证明了这一点。有一个经典的ASP处理程序调用{​​{1}},将结果编码为JSON并将其POST到.NET HttpHandler,然后将其与所有常规.NET错误一起记录到ELMAH。

代码和备注位于https://github.com/dylanbeattie/ElmahASP

答案 1 :(得分:2)

根据您计划保留经典asp的时间长短,一种选择是创建一个临时的.Net站点,该站点启用了elmah来捕获经典的asp错误。您的经典ASP网站会通过帖子或其他东西发送此网站的错误,使用安全措施来防止不需要的帖子。您需要解析发送的数据并手动调用elmah来记录错误。

然后,在升级时,使用相同的设置,您的日志记录将在两个版本之间无缝连接。