ASP.NET MVC:生成环境中的Javascript错误日志记录

时间:2015-08-07 09:43:01

标签: javascript asp.net-mvc bundling-and-minification error-logging

Web应用程序中有几个可用于javascript错误记录的库。这些库在开发过程中非常有用。我们可以使用widows.onerror处理程序捕获全局级别的javascript错误。

一切看起来都很好,而且很高兴。

但是如果我们在ASP.NET MVC中启用捆绑和缩小,则很难发现实际错误,因为缩小会导致重命名变量并压缩代码从而改变行号。如何应对这种情况?我经历了很多帖子,但找不到任何令人满意的解决方案。我们希望明智的javascripts错误记录在生产环境中。对此有何想法或建议?

1 个答案:

答案 0 :(得分:1)

查看JavaScript source maps,它会在您的源脚本和随页面提供的缩小脚本之间创建一个引用。它看起来像someone has built an extension to the ASP Bundles,可以创建源图。

但是,即使使用源映射,从window.onerror捕获的错误仍将包含缩小的名称和位置。您需要在错误管理系统中编写一些代码,以将源映射应用于代码(或手动执行)以查看实数。

如果源代码可公开下载,则Chrome会自动将源图应用于其调试器中的错误,但这些值无法以编程方式提供给您的错误捕获。

最后要考虑的是使用已经解决了这个问题的托管服务。您可以在其他地方发送错误报告,让它们捕获错误信息,并为您提供有关何时发生重要错误的报告/警报 - 甚至可以使用源映射转换错误。我推荐(并帮助写)TrackJS