tangxiangmin / footprint

user data statistics sdk

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

footprint

一套前端埋点、元数据管理、数据查询的解决方案

提供了Docker开发环境

docker-compose up -d

埋点SDK API

移步 documentation

事件

eventType表示某个事件的类型

export const EVENT_TYPE = {
  pv: 1, // 访问
  click: 2, // 点击
  duration: 3, // 页面停留
  exposure: 4, // 元素曝光
  logic: 5 // 逻辑埋点
}

不同eventType对应的eventValue不同

eventType eventValue
访问
点击 点击元素的名称
停留 停留时长
曝光 曝光元素的名称
逻辑埋点 对应的描述key

每条事件都会携带 系统级别 的公共参数,如设备型号、上报时间、运行环境等

页面

按前端页面的维护来管理事件,一个页面可能包含多种事件,每种事件可能包含1个或多个

  • 访问该页面,数量为1
  • 点击该页面的某个按钮,数量为N
  • 用户在该页面的停留时间,数量为1
  • 该页面某个弹窗的出现曝光次数, 数量为N
  • 用户在该页面进行了某个行为过程中需要记录一下逻辑流程,数量为N

在实际业务中,一个页面上报的所有事件,一般会携带一些公共参数,比如页面id、页面来源utm_source等,因此提供了 页面级别 的公共参数配置

对于单个事件而言,除了系统级别和页面级别的公共参数之外,可能还会携带一些业务相关的独立参数,因此每个事件还可以配置独立的元数据配置

基于这个约定,我们可以收集每个页面的埋点,然后汇总在一起,这样每个页面可以查哪些数据,就一目了然

公共事件模板

还有一种特殊的事件,可能在多个页面触发。 eg:一个活动弹窗,可能会在数个页面触发曝光和点击事件

如果在每个页面都去配一次这个页面,无疑十分繁琐。基于这种场景,提供了事件模板的配置。

其配置单个事件保持一致,唯一的区别是增加了页面的多选项,可以选择当前事件生效的页面

保存之后前往对应的页面,也可以在页面的事件列表中看见该事件

除了无法在页面编辑处修改之外,与常规的事件没有任何区分

访问追踪

本章节相关字段待定

有时候,在单次会话期间,需要关注某个页面的访问来源,在非web的环境下,referer并不足以实现收集页面来源的功能,因此需要开发者自己实现

可以将来源分为应用内部来源和应用外部来源

对于外部来源

  • utm_source,用于追踪页面外部来源,比如通过第三方广告平台投放的广告,跳转到某个落地承接页,承接页会上报该数据
  • utm_campaign,外部投放的广告名称

对于内部来源

  • from_page,用于追踪页面内部来源,比如从页面A跳转到了页面B,页面B会上报该字段的内容为页面A
  • from_pos,从来源页面的某个位置跳转过来

看起来直接查日志记录就可以进行会话追踪了

About

user data statistics sdk


Languages

Language:TypeScript 43.4%Language:Vue 36.0%Language:JavaScript 18.0%Language:HTML 1.8%Language:Dockerfile 0.8%