Radar Analytics JS SDK:exception 集成文档(2022.05.27)
JS异常捕获插件
JS异常捕获大多是对web页面上问题进行捕获的,sdk自动捕获的异常类型的有以下几个:
- Uncaught ReferenceError:引用错误
2. RangeError:范围错误
3. TypeError:类型错误
4. URIError:URL错误
5. ResourseError:资源错误(img、video、audio、script、source、link)
6. Promise:reject异常
7. 异步回调异常:函数或对象undefined
8. script文件加载失败
9. EvalError: eval()异常
支持SPA框架:Vue和React语言框架。
集成步骤:
本功能是基于radar-analytic-js-sdk的插件功能实现的。集成步骤如下:
1、需要检查下本地是否已经集成了radar-analytic-js-sdk。
2、下载npm包
npm install radar-analytic-js-capture-exception --save-dev
3、初始化插件,并开启自动捕获异常。
import RADAR_MONITOR from "radar-js-analytic-sdk";
import "radar-analytic-js-capture-exception";
var exception = RADAR_MONITOR.use('exception', {
isOpenHttpServer: true, //是否开启异常网络捕获。默认是开启
whiteUrls: ['http://abc.com','http://localhost/test-api.js'] //无需上报捕获的异常网络请求
});
exception是插件对象, 用来调用实例化方法。
接口说明:
自定义上报异常错误对象
- @param {Error} exception Error类型对象
1、captureException(exception)
例如:
var error = new Error('test exception');
exception.captureException(error);
自定义上报错误事件
- @param {String} type 错误类型
- @param {String} stacktrace 堆栈信息
- @param {String} message 自定义消息
- @param {String} name 自定义名称
2、captureEvent(type, stacktrace, message, name)
例如:
var type = "error";
var stacktrace = "";
var message = "this is a message";
var name = "abc";
exception.captureEvent(type,stacktrace,message,name);