美文网首页
错误监控

错误监控

作者: 阿昕_ | 来源:发表于2018-06-30 15:31 被阅读22次

    前端错误分类

    • 即时运行错误:代码错误
    • 资源加载错误:资源加载失败

    错误捕获方式

    • 即时运行错误
      -- try...catch
      -- window.onerror
    • 资源加载错误
      -- object.onerror
      -- performance.getEntries() -->返回请求的时间统计信息
      -- Error事件捕获阶段获取错误
    // performance.getEntries()
    (function () {
        if (!window.performance && !window.performance.getEntries) {
            return false;
        }
    
        var result = [];
        window.performance.getEntries().forEach((perf)=>{
            result.push({
                'url': perf.name,
                'entryType': perf.entryType,
                'type': perf.initiatorType,
                'duration(ms)': perf.duration
            });
        });
    
        console.table(result);
    })();
    
    //Error事件捕获
    window.addEventListener('error',(e)=>{console.log(e)},true);
    

    跨域的js运行错误也可以捕获,会提示'Script error',获取不到错误的具体信息
    解决方法:
    1.在script标签增加crossorigin属性
    2.设置js资源响应头 Access-Control-Allow-Origin:
    *

    上报错误的基本原理

    • 采用ajax通信的方式上报
    • 利用Image对象上报
      (new Image()).src='http://baidu.com/1.html?e=1';

    fundebug

    • 推荐一个错误监控平台 fundebug,试了试觉得还不错
    • fundebug是全栈应用错误实时监控平台。当用户应用出现错误时,Fundebug会通过邮件或者第三方工具立即给开发者发送报警,这样能够帮助开发者及时发现并且解决应用错误,从而提升用户体验。

    相关文章

      网友评论

          本文标题:错误监控

          本文链接:https://www.haomeiwen.com/subject/nfwtuftx.html