1. 名词解释
- xpath : 分为精确路径和概略路径两种做法。精确路径 : body>div[0]>div[3]>ul>li[5]>a[0] ,从被点击的元素不断向上查找到根节点,并记录过程中每个节点。概略路径:body>div.header>div.nav>a[23],在前者的基础上省略上溯路径中非白名单中的节点。
- 瞬发事件:点击等。
- 持续事件:页面滚动等。
- 全量日志:对页面采集到的所有事件进行上报。
- 埋点: 植入代码,对用户的行为进行记录。
- 点击埋点:用户进行了点击、刷新、触碰等主动操作后,打点。 例如:用户点击“注册”按钮,向服务器发送一条日志。
- 曝光埋点:当被埋点的数据得到展示的时候,打点。页面曝光,页面被展示的时候,打点。局部曝光,例如:用户浏览首页,看完第一屏,意犹未尽,于是翻页了,这时候发送一条曝光日志,表示第二屏的内容被用户看到了。
2. 前端埋点
2.1 代码埋点
在代码中,直接植入数据收集代码,抓取用户行为数据后上传。
- 优点:数据采集的准确性、针对性强,数据处理方便。
- 缺点:埋点的代码入侵性强,采集的数据单一,当需求发生变化时,对代码改动较大。
2.2 可视化埋点
通过可视化工具,后台配置锚点并实时下发到客户端生效,前端自动解析配置并上传数据,例如,Mixpanel。
- 优点:上手简单,可以自定义配置,不需要手工修改代码。
- 缺点:覆盖的功能有限的,并不是所有的控件操作都可以通过这种方案进行定制。
2.3 无埋点
无埋点的的技术方案,早在2013年就已被提出了。在客户端集成无埋点采集后,会尽可能多的收集数据,甚至不需要考虑埋点位置,也不需要配置埋点。当需要埋点数据时,只用筛选出相关数据即可。
- 优点:无埋点解决了数据回溯的问题。不需要提前知道需求,先尽可能多的收集数据。
- 缺点:对数据传输和存储的要求高。
3. 后端埋点
后端埋点就是在服务端嵌入代码,收集数据。
3.1. 前、后端埋点比较
后端埋点:
前端埋点:
4. 无埋点
4.1 无埋点的优势
- 代码入侵少:除了网络和CPU的开销,对客户端几乎无影响。
- 沟通成本低:不需要与各类人员沟通埋点的位置、采集的方式。
- 数据更全面:全量日志式的采集用户行为数据,将分析推迟,避免因缺少埋点产生的疏漏。
4.2 无埋点方案设计
无埋点设计方案主要从数据采集、分析、呈现三个方面,用户、应用、页面、元素四个维度对项目进行规划,横向对比组内同学提供的工具,指出可能融合的现有项目,同时也暴露项目的风险,提供项目以指导。
- 设计方案
- 处理流程
- 数据流向
- 前端原型
- 关注点
5. 参考
- https://help.growingio.com/
- http://tech.meituan.com/mt-mobile-analytics-practice.html
- https://www.zhihu.com/question/38000812
- https://my.oschina.net/leejun2005/blog/292709