iOS端监控SDK探索与实践-埋点技术简介

高佳杰
1.什么是数据埋点?
  • 简单的说,埋点就是定时、定点的数据采集,然后上报。
2.加入数据埋点有什么好处?
  • 做常规数据指标的监测
  • 渠道分析,或者说流量分析
  • 用户的核心转化率统计
  • 用户使用时长的监测
  • 用户流失情况统计
  • 活跃用户动态统计
  • 用户特征描述统计
  • 用户生命周期的监测
  • ......
3.我们需要对哪些数据设置埋点?
  • 多元性
    • 采集过程应从不同的维度去获取数据。比如我们要采集用户相关的部分数据。那么我们可以从身高、体重、兴趣爱好等各个层次、多维度的去采集对应数据。这样的数据还原出来的用户对像才更有活性,对于今后的数据分析、包括描绘用户画像也更为有利。
  • 准确性
    • 准确性包含两个层次的要求:1.数据采集过程的准确性:对于特定的流程分析,我们的埋点方案要具备一定的针对性,避免无关因素的干扰。2.数据的客观性。我们不能代替客户,我们能做的只是观察并记录,臆想的数据对于我们毫无价值。
  • 时效性
    • 对于采集的数据,它只能反映过去的某个时刻或者某段时间的客观情况。得到的结果和结论也只能是对应过去的某个时间段而言。可能是受制于当时的网络情况、社会环境等因素的影响,才会呈现出这样的结果。所以我们在采集数据的同时最好能给它打上时间标签,方便今后的数据对比。
4.数据埋点有哪些方案?
  • 代码埋点
    • 优点 :大多以事件的方式进行采集,准确性和针对性强。
    • 缺点:编码工作量大,代码入侵性强,耦合度高。
  • 可视化埋点
    • 优点 :代码埋点将核心代码和配置资源进行了分离。在每次启动的时候都会有去请求最新的埋点配置,他在一定程度上降低了代码埋点的门槛,只要客户端集成之后,PM在web上就可以进行操作。
    • 缺点:不能统计特别复杂的情况,比如带用户行为的统计
  • 无埋点
    • 优点:它在客户端集成之后,会主动的尽可能多的收集数据,甚至连要在那里埋点的问题都省略了,我们不用去设置配置文件,如果我们想要特定的数据直接去查询即可
    • 缺点:不能统计特别复杂的情况,比如带用户行为的统计