javascript - 在生产模式下获取 Ember 应用程序的堆栈跟踪

标签 javascript debugging ember.js try-catch ember-data

我正在尝试在生产服务器中调试 emberjs 和 ember-data 应用程序。我在 window.onerror 上收听,所以当出现问题时,我会得到回调,我可以在其中收到错误消息、行号和文件。但是 window.onerror 行为在不同的浏览器中是不一样的。而且它不提供堆栈跟踪

所以我使用下面的函数来包装 ember 边界函数,这样我就可以获得完整的堆栈跟踪。

function tryCatchWrapper (func, name) {

  // Else wrap the function and return it
  function wrapped() {
    try {
      return func.apply(this, arguments);
    } catch (e) {
      // Report the errors
      console.log((name ? name + ": " : "") + e.message);
      // Get stacktrace
      throw e;
    }
  }
  return wrapped;
};

那么我可以使用上述函数包装哪些函数,以便在不影响任何内容的情况下获取有关应用程序中发生的所有错误的信息?

更新

已添加 JS Fiddle

最佳答案

为什么不使用 Ember.onerror事件?

CFR this answer

关于javascript - 在生产模式下获取 Ember 应用程序的堆栈跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15529753/

相关文章:

javascript - jasmine-jquery 与 selenium 驱动程序(如 Nightwatch.js) - 何时选择其中每一个?

Ember.js - 学习动态段、链接、嵌套路由

javascript - 根据文本值设置图标

javascript - 如何设置高度,或允许 div 延伸到绝对位置元素的高度?

Azure管道发布管道: ARM Template deployment: Resource Group scope fails with ,,错误代码:DeploymentFailed”

使用 Pdb 进行 Python 调试

c# - 调试错误 "The Type ' xx' 在未引用的程序集中定义”

javascript - 在验收测试中调试 Ember CLI Mirage

javascript - Rails Controller 不接受 JSON?

javascript - 如何在 Javascript 中删除 "mouseup"事件监听器