全部产品
云市场

信息报告 WVReporter

更新时间:2019-01-14 16:37:59

WVReporter.commitAppMonitorStat

提交 AppMonitor 的性能埋点。

输入参数

  • [String] module - 埋点的模块名。
  • [String] point - 埋点的监控点。
  • [Object] dimensions - 埋点的维度信息,对象的每个值(字符串)都会作为 AppMonitor 性能埋点的维度使用。
  • [Object] measures - 埋点的指标信息,对象的每个值(数字)都会作为 AppMonitor 性能埋点的指标使用。

回调参数

无回调参数,如果埋点成功,则进入 success 回调,否则进入 failure 回调。

  1. var params = {
  2. module: 'MyModuleName',
  3. point: 'MyPoint',
  4. dimensions: {
  5. 'url': 'test.WindVane.taobao.com',
  6. 'myDim1': '201',
  7. },
  8. measures: {
  9. 'value': 10.2,
  10. 'myValue2': 100.2,
  11. },
  12. };
  13. window.WindVane.call("WVReporter", "commitAppMonitorStat", params);

WVReporter.reportDomLoad

报告当前页面的首字节时间和 DomLoad 事件时间,供 H5 性能埋点使用。

WindVane iOS 8.2.0 或更高版本 中,WindVane 会自动捕获 DOMContentLoaded 事件的时间,与页面自己的埋点不会产生冲突。

输入参数

  • [number] firstByte - 当前页面的首字节时间(使用 Date.now() 获得的毫秒数)。
  • [number] time - 当前页面的 DomLoad 事件时间(使用 Date.now() 获得的毫秒数)。

回调参数

无回调参数,如果报告信息成功,则进入 success 回调,否则进入 failure 回调。

  1. (function () {
  2. var firstByteTime = Date.now();
  3. document.addEventListener("DOMContentLoaded", function () {
  4. if (window.WindVane) {
  5. var params = {
  6. firstByte: firstByteTime,
  7. time: Date.now()
  8. };
  9. window.WindVane.call("WVReporter", "reportDomLoad", params);
  10. }
  11. }, false);
  12. })();

WVReporter.reportError

报告当前页面的 JS 错误,会通过 AppMonitor 的 WindVane-JavaScriptError 埋点上传。

WindVane iOS 8.2.0 或更高版本 中,WindVane 会自动捕获 JS 错误,并设置 from = 'WindVane',便于与业务方自己的埋点区分开来。

输入参数

  • [string] file - 发生 JS 错误的 JS 文件。
  • [string] url - [可选]要上传的 URL,默认使用当前页面的 URL。
  • [string] msg - JS 错误信息。
  • [string] line - 发生 JS 错误的 JS 行号。
  • [string] col - 发生 JS 错误的 JS 列号 WindVane iOS 8.2.0 或更高
  • [string] stack - 发生 JS 错误的 JS 堆栈 WindVane iOS 8.2.0 或更高
  • [string] from - [可选]错误埋点的来源,用于区分同样的错误被多次捕获 WindVane iOS 8.2.0 或更高

回调参数

无回调参数,如果报告信息成功成功,则进入 success 回调,否则进入 failure 回调。

示例

  1. (function () {
  2. if (window.WindVane) {
  3. var oldOnError = window.onerror
  4. window.onerror = function (message, file, lineno, colno, error) {
  5. var params = {
  6. file: file,
  7. msg: message
  8. line: lineno,
  9. col: colno,
  10. stack: error ? error.stack : ''
  11. };
  12. window.WindVane.call("WVReporter", "reportError", params);
  13. if (oldOnError) {
  14. return oldOnError(message, file, lineno)
  15. }
  16. return false
  17. }
  18. }
  19. })();