0.0.4 • Published 6 months ago

@blueking/bk-trace-core v0.0.4

Weekly downloads
-
License
ISC
Repository
-
Last release
6 months ago

数据上报插件

用于上报前端事件上报,统计界面PV和UV这些

如何安装

Vue3项目

  1. 安装最新SDK
npm i @blueking/bk-trace-core@latest
  1. 在项目入口引入SDK
import { createApp } from 'vue';
import App from './App';

// 引入SDK
import BkTrace from '@blueking/bk-trace-core';

// 性能和屏幕录制包(安装需求安装)
// import BkTracePerformance from '@blueking/bk-trace-performance';
// import BkTraceRecord from '@blueking/bk-trace-recordscreen';

// BkTrace.use(BkTracePerformance);
// BkTrace.use(BkTraceRecord);

createApp(App)
  .use(BkTrace, {
    url: '/api/report', // 上报地址
    appCode: 'bk-test',// 你的APP名称
    appVersion: 'bcs-v1.0.0',// 你的APP版本
    spaceID: 'testproject', // 当前空间(支持使用函数 ()=>'testproject')
    spaceType: 'project', // 当前空间类型(支持使用函数 ()=>'project')
  })
  .mount('#app');

Vue2项目

  1. 安装最新SDK
npm i @blueking/bk-trace-core@latest
  1. 在项目入口引入SDK
import Vue from 'vue';

// 引入SDK
import BkTrace from '@blueking/bk-trace-core';

// 性能和屏幕录制包(安装需求安装)
// import BkTracePerformance from '@blueking/bk-trace-performance';
// import BkTraceRecord from '@blueking/bk-trace-recordscreen';

// BkTrace.use(BkTracePerformance);
// BkTrace.use(BkTraceRecord);

Vue.use(BkTrace);

手动上报

默认会自动上报UV和PV数据,也可以手动上报自定义数据

1.指令用法手动上报

<span v-bk-trace.click="{ ct: '用户点击span' }">点击span</span>

2.引入自定义方法上报

<template>
  <div>
    <!-- 绑定点击事件 handleClick -->
    <span @click="handleClick">点击span</span>
  </div>
</template>

<script>
import { defineComponent } from 'vue';
import { transportData } from '@blueking/bk-trace-core';
export default defineComponent({
  setup() {
    const handleClick = () => {
      const message = '调用自定义方法上报';
      // 调用 transportData.send 方法进行数据上报
      transportData.send(message);
    };

    return {
      handleClick,
    };
  },
});
</script>

配置说明

名称描述类型默认值
url上报的地址string
appCode应用codestring
appVersionAPP版本string
spaceType空间类型SpaceTypefunction
spaceID空间IDstringfunction
user用户idstring
disabled是否禁用SDKboolean
silentXhr监控 xhr 请求booleanfalse
silentFetch监控 fetch 请求booleanfalse
silentClick监控 click 事件booleanfalse
silentError监听 error 事件booleanfalse
silentUnhandledrejection监控 unhandledrejectionbooleanfalse
silentHashchange监听路由 hash 变化boolean
silentHistory监听路由 history 变化boolean
silentBreadcrumbs记录用户行为堆栈booleanfalse
recordScreenTime单次录屏时长number
recordScreenTypeList上报录屏的错误列表string[]
silentWhiteScreen开启白屏检测boolean
skeletonProject骨架屏检测boolean
whiteBoxElements白屏检测容器列表string[]
filterXhrUrlRegExp过滤接口请求正则RegExp
useImgUpload使用图片打点上报boolean
throttleDelayTime点击事件节流时长number
overTime接口超时时长number
maxBreadcrumbs用户行为最大长度number
repeatCodeError去除重复代码错误boolean
beforePushBreadcrumb行为列表前的 hook(data: Partial) => Partial
beforeDataReport数据上报前的 hook(data: ReportData) => Promise<ReportDataboolean>
getUser用户定义() => stringnumber
handleHttpStatus处理接口返回 response(data: any) => boolean

上报数据格式说明

字段名类型描述
idstring唯一标识符,用于标识每一条上报数据。
etnumber事件发生的时间戳。
verstring应用的版本号。
plvstring上报插件的版本号。
ccnumber缓存命中次数。
sidstring会话ID,用于标识用户会话。
sctnumber会话计数,记录会话的次数。
stsstring会话状态。
ustring当前界面的URL。
titstring界面的标题。
uAstring浏览器的User-Agent信息。
ulstring用户的语言设置。
aCstring应用的唯一标识。
lostring地理位置信息。
srstring显示设备的分辨率。
osstring操作系统信息。
gcdstring设备ID。
linumber异常发生的行号。
conumber异常发生的列号。
ratstring性能指标的评级(如FCP、LCP、TTFB、FID)。
vstring \| number性能指标的值。
pEPerformanceEntry原始性能数据。
pRsPerformanceResourceTiming[]原始性能资源数据。
hsnumberJavaScript堆栈大小。
thsnumberJavaScript总堆栈大小。
uhsnumberJavaScript使用的堆栈大小。
fUstring接口的URL。
fEnumber接口请求的耗时。
fSnumber接口状态码。
usrstring \| number用户名或用户ID。
actEVENTTYPES用户执行的操作类型。
ctstring具体的操作类别。
dstring操作数据或信息。
tostring操作目标。
frstring操作来源。
sptstring空间类型。
spidstring空间ID。
skPartial<ReportData>[]用户行为堆栈,记录用户的操作历史。