API功能
JS数据监测接口
如需使用JS数据监控接口,需要使用BonreeSDK预先插入到WebView框架中的桥接对象bonreeJsBridge
来调用各设置函数。如:
bonreeJsBridge.setUserID('1234');
注意:使用JS行为数据监控功能需要开启WebView功能。
JS接口的参数限制与原生基本一致。JS特有接口参数限制本文档单独标注。
设置用户ID
// 设置会员ID
function setUserID(ID);
- 接口说明
参数名 | 类型 | 注释 |
---|---|---|
ID | String | 用户ID |
示例
在需要设置会员用户id时添加如下代码:
<script> function myclick() { bonreeJsBridge.setUserID('1234'); } </script>
设置用户附加信息
function setExtraInfo(extraInfo);
- 接口说明
参数名 | 类型 | 注释 |
---|---|---|
extraInfo | String | 用户附加信息。key-value形式的Json字符串。 |
示例
某html页面在进入某一个页面时设置自定义信息:
<script> function myclick() { var json = '{ "js1": "jsvalue1", "js2": "jsvalue1", "js3":"jsvalue3" }'; bonreeJsBridge.setExtraInfo(json); } </script>
自定义异常
function setCustomException(exceptionType, causedBy, errorDump);
- 接口说明
参数名 | 类型 | 注释 |
---|---|---|
exceptionType | String | 异常类型。必传参数,空或空串接口调用无效。 |
causedBy | String | 异常原因 |
errorDump | String | 异常堆栈 |
示例
<script> function customException() { bonreeJsBridge.setCustomException("Custom exception type", "Caused by customer.", "Custom error dump 0\nCustom error dump 1"); } </script>
自定义视图
// 自定义视图开始记录
function setCustomPageStart(pageName, pageAlias);
// 自定义视图结束记录
function setCustomPageEnd(pageName, pageAlias);
- 接口说明
参数名 | 类型 | 注释 |
---|---|---|
pageName | String | 页面名称。必传参数,空或空串接口调用无效。 |
pageAlias | String | 页面别名 |
示例
监测关于html界面,其对应页面名称为About.html:
<script> function myclick() { bonreeJsBridge.setCustomPageStart("001", "About"); bonreeJsBridge.setCustomPageEnd("001", "About"); } </script>
注意:
setCustomPageStart
和setCustomPageEnd
需成对调用。
自定义事件
function setCustomEvent(eventId, eventName);
- 接口说明
参数名 | 类型 | 注释 |
---|---|---|
eventId | String | 事件ID。必传参数,空或空串接口调用无效。 |
eventName | String | 事件名称 |
示例
检测某html页面内的某button点击情况:
<script> function myclick() { bonreeJsBridge.setCustomEvent("1111", "button click"); } </script>
自定义日志
function setCustomLog(logInfo);
- 接口说明
参数名 | 类型 | 注释 |
---|---|---|
logInfo | String | 日志信息。必传参数,空或空串接口调用无效。 |
示例
检测某JS函数的执行日志:
<script> function myclick() { bonreeJsBridge.setCustomLog("2020-01-01 08:30:00 Print myclick()"); } </script>
自定义指标
function setCustomMetric(metricName, metricValue);
- 接口说明
参数名 | 类型 | 注释 |
---|---|---|
metricName | String | 指标名称。必传参数,空或空串接口调用无效。 |
metricValue | String | 指标数值。必传参数,指标为空或非数值接口调用无效。 |
示例
检测JS函数内某测试指标:
<script> function myclick() { bonreeJsBridge.setCustomMetric("测试指标01", "1"); } </script>
自定义H5性能数据
function setCustomH5performanceData(dataInfo);
- 接口说明
参数名 | 值类型 | 注释 | 传参限制 | 值说明 |
---|---|---|---|---|
pvid | String | 页面唯一标识 | 非空校验,类型校验,长度校验<=2083 | UUID(数据异常默认生成新ID) |
url | String | document.url | 非空校验,类型校验,长度校验<=2083 | -- |
imd | Number | main document | 非空校验,类型校验 | 1-主文档;0-非主文档 |
ns | Number | navigation start (ms) | 非空校验,类型校验 | [时间戳] 无此指标数据传值 0 |
ues | Number | unload event start (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
uee | Number | unload event end (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
rds | Number | redirect start (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
rde | Number | redirec end (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
fs | Number | fetch start (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 0 |
dls | Number | domain lookup start (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
dle | Number | domain lookup end (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
cs | Number | connect start (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
scs | Number | secure connection start (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
ce | Number | connect end (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
reqs | Number | request start (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 0 |
rsps | Number | response start (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 0 |
rspe | Number | response end (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 0 |
dl | Number | dom loading (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 0 |
di | Number | dom interactive (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 0 |
dcles | Number | dom content loaded event start (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 0 |
dclee | Number | dom content loaded event end (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 0 |
dc | Number | dom complete (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 0 |
les | Number | load event start (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 0 |
lee | Number | load event end (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
fp | Number | first-paint (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
fcp | Number | first-contentful-paint (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
lcp | Number | largest-contentful-paint (ms) | 非空校验,类型校验 | [相对值] 无此指标数据传值 -1 |
标识相对值的时间指标指该指标与navigation start的相对时间。
示例
function fun() { var dataInfo = { "pvid":"00000000-0000-0000-0000-000000000000", "url":"http://localhost/index.html", "imd":1, "ns":1619061461208, "ues":-1, "uee":-1, "rds":-1, "rde":-1, "fs":3, "dls":5, "dle":6, "cs":7, "scs":9, "ce":12, "reqs":13, "rsps":15, "rspe":19, "dl":20, "di":22, "dcles":23, "dclee":25, "dc":26, "les":26, "lee":35, "fp":-1, "fcp":-1, "lcp":-1 }; bonreeJsBridge.setCustomH5performanceData(JSON.stringify(dataInfo)); }
自定义路由切换数据
function setCustomRouteChangeData(dataInfo);
- 接口说明
参数名 | 值类型 | 注释 | 传参限制 | 值说明 |
---|---|---|---|---|
tu | String | 目标路由(URL) | 非空校验,长度校验<=2083 | -- |
fu | String | 来源路由(URL) | 非空校验,长度校验<=2083 | -- |
d | Number | 切换耗时 (ms) | 非空校验,类型校验 | -- |
sta | Number | 切换状态 | 非空校验,类型校验 | 0-正常;2-异常 |
al | String | 路由名称(别名) | 长度校验 >256 字段值丢弃 | -- |
pt | String | 路由地址 | 非空校验,长度校验<=256 | -- |
rt | String | document.url(去锚点) | 非空校验,长度校验<=2083 | -- |
pu | String | document.url | 非空校验,长度校验<=2083 | -- |
fw | String | 单页面框架名称 | 非空校验,长度校验<=256 | Vue,Angular,React 任选其一 |
示例
function fun() { var dataInfo = { "tu":"http://localhost/index#/home", "fu":"http://localhost/index#/", "d":2, "sta":0, "al":"", "pt":"/home", "rt":"http://localhost/index/home", "pu":"http://localhost/index#/home", "fw":"Vue" }; bonreeJsBridge.setCustomRouteChangeData(dataInfo); }