我们平常所说的埋点,可以大致分为两部份,一部份是统计APP页面访问情况,即页面统计;另外一部份是统计APP内的操作行为,及自定义风波统计。
一、页面统计
页面统计,可以统计应用内各个页面的访问次数(PV),访问设备数(UV)和访问时长,以及各页面之间的流向关系。
1.1页面访问数
页面访问次数,即当前页面的被访问的次数快手埋点赞的平台,即浏览量PV;举例:首页,访问次数,1000次;
页面访问人数,即访问该页面的活跃用户数,即独立访问数UV;举例:首页,访问人数,100次;
1.2页面访问时长
页面访问时长,用户在页面的逗留时长,即首页受访时长的总和;举例:首页,访问总时长,2小时;
1.3页面流向分布
页面流向(迈向)分布,可统计出,当前页面和下一个页面(有多个)的流向关系;
举例1:在“商品详情”这个页面中,可以步入“购买”、“收藏”、“返回列表”、共3个页面,即在“商品详情”页,可能的流向分布为:
其中,用户在该“商品详情”页面快手埋点赞的平台,没有步入对应的3个页面,即视为“离开应用”,在页面流向分布,有2个常见问题:
二、自定义风波统计
自定义风波,即记录用户的操作行为(如点击行为),记录用户操作行为中的具体细节;通常来说,一般所说的埋点,指的就是自定义风波。
埋点可以是某个按键,某个点击区域,某个提示,甚至可以拿来统计一些特定的代码是否被执行。在APP中,须要在代码中定义一个风波行为。
2.1简单风波统计
简单风波统计,即记录风波的发生次数(可理解为PV)和风波发生人数(可理解为UV)。
以下边的登入页为例:
其风波统计的结果为:
风波ID,即EventID,该名称可由程序员自行定义(根据APP统计平台,如友盟、talkingdata等提供的风波ID命名规范进行命名),将该风波ID写入须要跟踪的位置中即可。
风波名称,可以理解为风波ID的一个英文翻译名称,是为了便捷营运人员查看,风波名称命名是在APP上线后,该风波ID有数据后的一个事后行为,一般是在APP数据平台中定义(假如你愿意,你可以把input_number这个风波ID的风波名称改为:用户在这儿输入手机号)。风波名称只是风波ID在后端页面的一个显示名称。
风波发生次数,即该风波总共发生的次数;可以理解为,在每位风波中,还会有个风波ID计数器,每每该风波被触发时,风波数即加1;
风波发生人数,即该风波的发生人数(有些APP统计平台亦称之为:达成该风波的用户数、独立用户数);参考风波发生次数,可以理解为,在每位风波中,还会有个风波ID计数器,每每该风波被触发时,同时记录下该用户的惟一标示,风波数即加1;风波发生人数,即按照用户惟一标示,对风波发生次数进行去重。
三、常用后端埋点方案总结
在上一节中介绍了后端监控的作用,这么怎样实现后端监控呢,实现后端监控的步骤为:后端埋点和上报、数据处理和数据剖析。首要的步骤就是后端埋点和上报,也就是数据的搜集阶段。数据搜集的丰富性和确切性会影响对产品线上疗效的判断结果。
目前常见的后端埋点方式分为三种:代码埋点、可视化埋点和无痕埋点。下边一一介绍每一种埋点的技巧。
(1)代码埋点
代码埋点,就是以嵌入代码的方式进行埋点,例如须要监控用户的点击风波,会选择在用户点击时,插入一段代码,保存这个窃听行为或则直接将窃听行为以某一种数据格式直接传递给server端。据悉例如须要统计产品的PV和UV的时侯,须要在网页的初始化时,发送用户的访问信息等。
代码埋点的优点:
缺点:
(2)可视化埋点
通过可视化交互的手段,取代代码埋点。将业务代码和埋点代码分离,提供一个可视化交互的页面,输入为业务代码,通过这个可视化系统,可以在业务代码中自定义的降低埋点风波等等,最后输出的代码耦合了业务代码和埋点代码。
可视化埋点听上去比较高大上,实际上跟代码埋点还是区别不大。也就是用一个系统来实现自动插入代码埋点的过程。
缺点:
(3)无埋点
无埋点并不是说不须要埋点,而是全部埋点,后端的任意一个风波都被绑定一个标示,所有的风波都别记录出来。通过定期上传记录文件,配合文件解析,解析下来我们想要的数据,并生成可视化报告供专业人员剖析因而实现“无埋点”统计。
从语言层面实现无埋点也很简单,例如从页面的js代码中,找出dom上被绑定的风波,之后进行全埋点。
无埋点的优点:
缺点:
四、前端埋点方案选型和后端上报方案设计
第一章中介绍了后端所须要窃听的信息,在第二章中介绍了后端埋点的常见方法,本文来依据需求,来订制我们的埋点和上报方案。
(1)监控数据
首先我们须要明晰一个产品或则网页,普遍须要监控和上报的数据。监控的分为三个阶段:用户步入网页首页、用户在网页内部交互和交互年报错。每一个阶段须要监控和上报的数据如右图所示:
(2)埋点方案
在实际项目高考虑到上报数据的灵活订制,以及降低数据传输和服务器的压力,在所需埋点处不多的情况下,常用的方法是代码埋点。
以用户步入首页为例,我们在首页渲染完成后会发送风波类型和类型相关的数据给server端,告知首页的监控信息。
(3)上报周期和上报数据类型
倘若埋点的风波不是好多,上报可以时时进行,例如监控用户的交互风波,可以在用户触发风波后,立即上报用户所触发的风波类型。倘若埋点的风波较多,或则说网页内部交互频繁,可以通过本地储存的方法先缓存上报信息,之后定期上报。
接着来确定须要埋点上报的数据,上报的信息包括用户个人信息以及用户行为,主要数据可以分为: