skyeye-sdk
v0.4.6
Published
实时监控前端JavaSript应用的错误,助您提升用户体验
Downloads
7
Readme
错误监控插件
实时监控前端JavaSript应用的错误,助您提升用户体验
安装
npm install skyeye-javascript
使用
import Skyeye from "skyeye-javascript";
const error = new Skyeye({
isProd: true,// 分测试和正式环境
client: '', // 客户端id(必填)
page: '', // 页面标识(非必填)
url: ''// 错误日志发送地址 非必填)支持代理转发,
ignoreResource: false, // 过滤资源报错
ignore: [],// 忽略指定报错-正则匹配
openTraceLog: false,// 开启行为追踪
traceLimit: 50 //本地行为步骤最多记录次数
})
window.$error = error
window.$error.ajaxError(response) // 支持接口自定义报错 - response为axios返回拦截器回调参数
data = {}
// 根据报错类型对应的错误对象不同
1. 请求报错
data = {
target: 'ajaxError',
type: 'RequestError',
method: '',// 接口方法
data: {},// 接口参数
status: 200,
statusText: 'ok',
headers: null, // 接口响应头
msg: '',// 接口报错信息
file: location.href, //请求报错url
page: location.href,// 出现错误的页面
errorKey: '',// 错误的唯一标识
}
2.js报错
const ErrTypeReg = /Uncaught\s(\S*):/i;
const type = e.message.match(ErrTypeReg);
data = {
target: 'scriptError',// js报错(必填)
type: '',// js错误类型(必填) 常见js错误 SyntaxError, ReferenceError,RangeError, TypeError, unknown等
msg: '',// 错误信息,
file: '',// 文件名称,
line: '',// 文件错误行,
col: '',// 文件错误列
page: '',// location.href,
errorKey:'' //错误的唯一标识
}
widnow.$error.sendApi(data) // 自定义报错
如应用未使用axios作为ajax框架,不能全局拦截报错,需要用户手动发送接口报错
let errObj = {
target: 'ajaxError',
type: 'RequestError',
method: 'post',
data: {},
status: 200,
statusText: 'ok',
headers: 'content-type: application/json',
msg: '{"code":50001,"message":"成员不存在, organId:f623e964316a43b78f7b725f92e45f98, memberAccountUid: 89eb2f7439b745fab561a15132a615fe ","data":null}',
file: requestUrl,
page: location.href,
errorKey: 999,
}
widnow.$error.sendApi(errObj)