埋点技术除了刚才的方式划分,还可以划分为前端埋点和后端埋点,后端埋点数据更可靠、更集中(且没有前端的多端问题)、更实时。
这篇文章主要是讨论前端埋点。
根据工作中对埋点的对比和整理,我们简单比较部分埋点方案:
对于语义明确的UI事件,自动埋点的数据一般会比手动埋点更加准确,更贴近用户行为,也更节省开发成本,侵入性更低。
主要是因为自动埋点语义简单明确,不像手动埋点由于开发习惯、代码风格、人的理解误差、分支处理等各种不确定因素变得没那么清晰明了。
比如:“下单”事件,自动埋点的PV肯定是>=手动埋点的,而UV差别可能不大。分析开发代码发现在onClick Listener中包含其他未覆盖到的分支,差别很可能就在代码分支当中。如果更进一步分析下代码可以发现,为什么开发不在分支当中埋点?可能这个分支会认为用户的这一次点击是“无效”的,但这只是程序逻辑的看法,用户可能不这么认为,用户很可能会觉得很奇怪没反应,然后再点一次。这些手动埋点不易察觉的细节,自动埋点都能记录,所以说,自动埋点在这些情况下会更贴近真正的用户行为。