# 日志收集相关接口汇总

# 浏览器的数据和异常收集

  1. 网络图片加载异常

使用 window.JsView.addEventListener("onImageLoadError", (detail)=>{})监听后进行上报

window.JsView.addEventListener("onImageLoadError", (detail)=>{
    let detail_info = JSON.parse(detail);
    console.log("出错的图片的url=" + detail_info.url);
    console.log("错误号=" + detail_info.errorCode);
    console.log("二级错误号=" + detail_info.detailCode);
})
1
2
3
4
5
6

  1. 为所有请求的HEAD中统一追加设备信息

使用window.JsView.appendNetTraceHeaders接口追加信息。

接口说明:

/**
 * 为全局网络调用追加用于帮助服务器进行请求跟踪的头信息
 * 再次设置的header,优先级高于native端的JsView.appendNetTraceHeader接口内容
 * 但优先级低于 axios 以及图片requestHeader(暂时无法通过标签设置)设置的header
 * 
 * @param {Object} headerMap key-value形式的object
 */
appendNetTraceHeaders(headerMap)
1
2
3
4
5
6
7
8

使用实例

window.JsView.appendNetTraceHeaders({
    userId: "3334444",
    appVersion: "3.0.4"
})
1
2
3
4

  1. 监听全局的js错误,并进行日志上报

此接口分js监听和native接听两种,都收到同样的信息。

js接口

使用window.addGlobalJsExceptionAck接口

接口说明

/**
 * 开启全局js错误监听者,或者注销监听
 * addGlobalJsExceptionAck/removeGlobalJsExceptionAck
 *
 * @param callback function类型, 发生js exception后的回调, 参数(name{string}, message{string}, stack{string})
 */
addGlobalJsExceptionAck(callback)

removeGlobalJsExceptionAck(callback)
1
2
3
4
5
6
7
8
9

使用实例

window.addGlobalJsExceptionAck((name, message, stack)=>{
    console.log("错误原因名:" + name);
    console.log("错误的消息:" + message);
    console.log("错误的堆栈:" + stack);
})
1
2
3
4
5

java接口

MainPageProxy.setJSViewExceptionReporter

请参考接口文档

# 播放器播放状态信息收集和异常收集

请单独咨询JsvPlayer模块负责以获取文档

Last Updated: 10/30/2024, 5:58:42 AM