【问题标题】:Output the rendered contents of a page on a JavaScript error在出现 JavaScript 错误时输出页面的渲染内容
【发布时间】:2011-01-14 18:33:43
【问题描述】:

我无法在生产环境中获取良好的 JavaScript 错误信息。

当我在开发时,我可以附加一个调试器并(通常)解决问题。

当我在生产环境中遇到同样的错误时,我最多只能看到如下所示的错误报告:

错误:对象不支持此属性或方法
网址:SomePage
线路:42
字符:13

这对我没有多大帮助 - 我看不到渲染的页面,所以我不知道第 42 行是什么样的。

每当发生此类错误时,我有什么方法可以记录整个渲染页面内容?(所以输出的第 42 行是错误所在的行发生)

当我这样做时,是否有任何其他技术可以帮助我从 JavaScript 中获取有用的错误信息(无需闯入调试器)——如果没有的话,我有什么方法可以构建我的 JavaScript稍有不同以帮助获得体面的调试信息?

我主要对 IE 感兴趣 - 这是给我带来最多问题的浏览器。

【问题讨论】:

  • 我不明白你使用的是哪个环境。如果只有 IE(哎哟!),你有没有安装调试栏(debugbar.com)?

标签: javascript logging error-handling


【解决方案1】:

我认为您无法在所有页面和所有浏览器中获取该页面的确切原始 HTML 源代码。

关于调试,您可以使用诸如log4javascript 之类的日志库(免责声明:我编写了它)并在您的代码中散布日志调用。 log4javascript 使您能够通过 Ajax 将日志消息发送回服务器。

【讨论】:

    【解决方案2】:

    不幸的是,IE 默认拥有最完全无用的错误报告。报错中的脚本和行号基本上保证是绝对错误的。但是,您可以安装来自 Microsoft 的 IE developer tool bar(对于 IE7 及更早版本,它内置在 IE8 中),这有助于追踪错误来源。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-25
      • 2020-08-11
      • 1970-01-01
      • 2020-06-12
      • 1970-01-01
      相关资源
      最近更新 更多