内置方法
# 内置方法
当遇到特殊场景需要手动触发采集时可以通过插件内置的方法来达到目的
# 主动上报方法
- traceError
- tracePerformance
- traceCustomEvent
- tracePageView
目前来说主动上报方法也要遵循最大缓存数和延迟时长的规则,还没有配置即刻触发
# traceError
采集错误信息(调用此方法时发送给后台的 eventType 为 error, 这是固定的)
参数名 | 类型 | 默认值 | 说明 |
---|---|---|---|
eventId | string | - | 作为eventId发送给后台,定义为和业务确定好的字段 |
message | string | - | 作为errMessage发送给后台 |
options | object | {} | 对象内的值在解构一层后放在和eventId同级一起发给后台,作为额外参数 |
示例:
trace.traceError('自定义错误ID', '自定义错误message', {
src: '/interface/order'
params: {
id: '12121'
}
})
// 传给后台的数据格式
{
eventInfo: [
{
errMessage: "自定义错误message"
eventId: "自定义错误ID"
eventType: "error"
params: { id: "12121" }
sendTime: 1641971060666
src: "/interface/order"
triggerTime: 1641971059665
type: "error"
url: "http://localhost:8083/err.html"
}
]
}
# tracePerformance
采集自定义性能数据(调用此方法时发送给后台的 eventType 为 performance, 这是固定的)
参数名 | 类型 | 默认值 | 说明 |
---|---|---|---|
eventId | string | - | 作为eventId发送给后台,定义为和业务确定好的字段 |
options | object | {} | 对象内的值在解构一层后放在和eventId同级一起发给后台,作为额外参数 |
示例:
trace.tracePerformance('自定义ID', {
param1: 'param1',
param2: 'param2',
param3: 'param3',
})
// 传给后台的数据格式
{
eventInfo: [
{
eventId: "自定义ID"
eventType: "performance"
param1: "param1"
param2: "param2"
param3: "param3"
sendTime: 1641977427175
triggerTime: 1641977426154
url: "http://localhost:8083/pv.html#/"
}
]
}
# traceCustomEvent
自定义上报事件(调用此方法时发送给后台的 eventType 为 custom, 这是固定的)
参数名 | 类型 | 默认值 | 说明 |
---|---|---|---|
eventId | string | - | 作为eventId发送给后台,定义为和业务确定好的字段 |
title | string | - | 作为title发送给后台 |
params | object | {} | 作为params发送给后台 |
示例:
trace.traceCustomEvent('自定义ID', '自定义Message', {
params1: 'params1',
params2: 'params2',
params3: 'params3',
})
// 传给后台的数据格式
{
eventInfo: [
{
eventId: "自定义ID"
eventType: "custom"
params: { params1: "params1", params2: "params2", params3: "params3" }
sendTime: 1641970593873
title: "自定义Message"
triggerTime: 1641970592870
type: "custom"
}
]
}
# tracePageView
触发一次页面路由采集(调用此方法时发送给后台的 eventType 为 custom, 这是固定的)
参数名 | 类型 | 默认值 | 说明 |
---|---|---|---|
option | object | { url = window.location.href, referer = oldURL, actions = '', params } | url会作为url当前页面的意思传给后台 referer上级页面URL的意思传给后台 actions会作为为action给后台 params会作为额外参数传给后台(不限制类型) 注意:只会取option对象中这四个属性,多给也不用 |
option.actions表示加载来源,可选值有这些(非必须,主要看使用者和后台的约定)
- navigate 网页通过点击链接,地址栏输入,表单提交,脚本操作等方式加载
- reload 网页通过“重新加载”按钮或者location.reload()方法加载
- back_forward 网页通过“前进”或“后退”按钮加载
- reserved 任何其他来源的加载
示例:
trace.tracePageView({
url: '自定义URL',
referer: '自定义上级URL',
params: { name: '自定义name' },
actions: 'reserved'
})
// 传给后台的数据格式
{
eventInfo: [
{
action: "reserved"
eventId: "13488d07-9c75a556-4af9699b30516737"
eventType: "pv"
params: { name: "自定义name" }
referer: "自定义上级URL"
sendTime: 1641976860759
title: "trace pv"
triggerTime: 1641976859757
type: "pv"
url: "自定义URL"
}
]
}
# 其他方法
调用以下方法会在触发任意采集并发送给后台时附带上设置的参数
- setCustomerId (设置类型ID)
- setUserUuid (设置用户ID)
_trace.setCustomerId('customId');
_trace.setUserUuid('uuid');
后续会新增由使用者来配置想要的参数名