专栏首页木东居士的专栏《七天数据埋点之旅》第六天 埋点管理和验收

《七天数据埋点之旅》第六天 埋点管理和验收

埋点管理是埋点设计的组织方式,可以细分为面向开发者的管理、面向监控者的管理和面向使用者的管理。本节节介绍面向使用者的管理。通过本节的学习,你将获得以下方面的认知:

  • 管理目的
  • 管理准则
  • 管理方式
  • 埋点验收

0x00 引言

埋点管理归结到底是元数据的管理,而且还是最底层的元数据管理。

从埋点记录的格式角度看,埋点管理是记录事件、事件参数、时间参数的取值随着版本迭代的增删改情况。

从埋点设计的角度看,埋点管理是记录元素(页面、区域、控件)、事件(行为)、上报(时机、网络等)这三个埋点对象随版本的变化情况。

0x01 管理目的

埋点管理主要有三大目的,即方便查询、方便协同、方便验证。

方便查询

因为埋点是最底层的元数据,在查询报表系统上没有展示的数据时候,产品、运营等可以将需求拆解为统计什么页面上的什么行为,根据页面和行为的简单拆解,通过埋点系统找到对应的埋点设计,然后根据埋点设计从原始的上报数据中查询即可。

方便协同

在第二节《埋点之前》中,我们介绍到埋点设计的过程中,需要产品、数据产品、数据开发和数据测试一起协同工作,而协同的根本就是埋点设计文档,而埋点设计文档是随着终端版本的更新而不断更新的,如何将这些更新准确地传达给各方,让协同高效,这是埋点管理的重点职责。

方便验证

在选择何种埋点管理方式的时候,一个重要的考虑点是能否将埋点设计的变更导出成可自动化测试的规则,从而可以在测试数据上快速的验证数据是否有上报、格式是否正确、各种情况是否穷尽等。

0x02 管理准则

埋点管理需要遵循以下准则:历史兼容、追踪回溯、备注完善

历史兼容

历史兼容是指在埋点设计的时候,有以下三个不可改变:

  1. 不能改变已有事件标示(事件id等)代表的事件含义
  2. 不能改变属性标示代表的含义
  3. 不能改变参数值代表的含义

基于以上三个不可改变,埋点设计只能在原有事件的基础上新增属性、新增参数、新增参数值,也可以在适当的时候废弃某些事件、参数、参数值。

虽然可以随着版本的迭代也容许事件、参数、参数值的含义进行改变,但是十分不可取的,不仅要在改变的过程中详细的记录,而且过度期间数据开发要很好的兼容迁移前和迁移后,待基本完成迁移后,还要精简程序。这无疑带来了很大的工作量。

也正是由于历史兼容的准则,受三个不可变的约束较强,在埋点设计之初就要进行合理的规划和布局,避免后期不得已进行埋点重新设计时带来的混乱。

追踪回溯

追踪回溯功能是埋点出现问题的时候排查的重要利器,要求埋点设计文档可以回退到任何版本的埋点快照(事件、属性和属性值级别),同时可以追踪的对应的操作人(埋点设计者、埋点开发者、埋点测试者等)。

备注完善

备注完善要求详细的标注出事件的上报时机(策略)、参数取值的具体含义,参数值计算方式和单位(尤其是时长类的参数值)、埋点针对的具体点页面位置。

 0x03 管理方式

不管采用哪种管理方式,都应该记录该埋点涉及的相关人员:

  • 埋点类型: 算法/业务(产品、运营)/监测/数据
  • 需求人员
  • 开发人员
  • 测试人员
  • 转化人员: 数据产品经理(单一,一般可不写)
  • 设计人员: 大数据开发(单一,一般可不写)

不管采用哪种管理方式,都要求输出埋点的改动信息如下:

  • 版本改动: 新增xx事件,事件参数有a,b,cxx事件新增a参数xx事件的a参数新增xx值
  • 版本快照: 该版本生效中的所有事件和参数
  • 版本对比: xxa版本和xxb版本对比新增了什么,删除了什么,改动了什么。

同时在用户体验上,当鼠标悬浮在某个事件或参数上面的时候(或者点击旁边的问号),可以给出该事件或者参数的历史变更记录。

Excel表格

修改摘要

修改内容

修改内容的维护是通过手动版本记录实现的

管理系统

采用该管理体系统的目的是方便的事件和属性添加修改,版本间对比的修改记录,版本快照,完善的注释(支持图片和文字)、一键验证、修改自动通知到干系人等。

备注:

本部分只讲解了单个产品的埋点管理,而埋点管理系统是要处理多个app的的埋点,后面完善。

权限管理

  • 根据不同的角色设计不同的app、version、event_id、params增删改查权限,尤其要注意权限的继承

 0x04 埋点验收

埋点验收是埋点设计的最后一环,是把控埋点质量的关键环节。

  • 双重验收

一是客户端通过抓包的方式确认数据的确有上报,二是通过数据仓库提取的方式确认数据落地的形式是否和埋点设计一致的

  • 验收预警

一旦上报了不符合埋点设计的值自动预警,比如埋点设计中该参数只有a,b,c三个枚举值,结果却上报了d这个值,这个功能可以反过来保证埋点设计和埋点上报是严格一致的。

另外埋点的上报频次和每次上报埋点数据量的大小也要在预估的范围内,尤其是像加入心跳埋点这样的事件,不然很容易就爆库。

埋点验收问题可以引出数据的自动化测试课题,见数据治理部分。

0x05 结语

埋点管理是埋点流程中最容易忽略的,因为其本身并不直接产出具体的价值,但是其对提高埋点流程的效率和埋点设计的质量的意义重大。另外要严格把控埋点验收,避免将埋点问题带到线上。

本文为数据茶水间群友原创,经授权在本公众号发表。

关于作者:我是水大人,资深潜水员,一个基于开发、面向分析、走向全栈的饱经摧残的数据新手,爱折腾不爱玩,爱总结爱思考的老兵,错了改改了又错的惯犯。

本文分享自微信公众号 - 木东居士(Data_Engineering),作者:水大人

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-04-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 《七天数据埋点之旅》指引篇

    数据埋点是一份上手容易精通难的典型例子,可以说人人都可以埋点,但是埋点质量差异巨大,而这份差异随着时间推移会加速放大。

    木东居士
  • 《七天数据埋点之旅》第二天:埋点之前

    关于作者:我是水大人,资深潜水员,一个基于开发、面向分析、走向全栈的饱经摧残的数据新手,爱折腾不爱玩,爱总结爱思考的老兵,错了改改了又错的惯犯。

    木东居士
  • 小案例:数据仓库搭建中的流量日志维度表案例

    关于作者:小姬,某知名互联网公司产品专家,对数据采集、生产、加工有所了解,期望多和大家交流数据知识,以数据作为提出好问题的基础,挖掘商业价值。

    木东居士
  • 日志埋点系统的架构与实现

    所谓“埋点”,是数据采集领域(尤其是用户行为数据采集领域)的术语。指的是针对特定用户行为或事件进行捕获、处理和发送的相关技术及其实施过程。 埋点的技术实质,是先...

    周三不加班
  • 关于程序埋点的思考

    对于本次修改的数据统计分析程序的埋点,只是为了统计数据中出现的一些不易发现的错误,全部让程序主动跑出来。但是只要是主动抛出统计数据,都属于埋点。

    职场亮哥
  • 知乎数据埋点方案

    从业务过程中采集埋点,是数据驱动型公司的必要条件。知乎的产品功能评审环节,不仅有 PRD (Product requirement document),还加入了...

    Spark学习技巧
  • 《七天数据埋点之旅》第二天:埋点之前

    关于作者:我是水大人,资深潜水员,一个基于开发、面向分析、走向全栈的饱经摧残的数据新手,爱折腾不爱玩,爱总结爱思考的老兵,错了改改了又错的惯犯。

    木东居士
  • 《七天数据埋点之旅》指引篇

    数据埋点是一份上手容易精通难的典型例子,可以说人人都可以埋点,但是埋点质量差异巨大,而这份差异随着时间推移会加速放大。

    木东居士
  • 埋点系统杂谈

    做埋点系统的初衷很简单,就是想更加详细了解用户是如何使用我们的产品,并串联起已有的线下数据,从而更好为用户提供服务。

    哒呵呵
  • 美团点评前端无痕埋点实践

    构建一个数据平台,大体上包括数据采集、数据上报、数据存储、数据计算以及数据可视化展示等几个重要的环节。其中,数据采集与上报是整个流程中重要的一环,只有确保前端数...

    美团技术团队

扫码关注云+社区

领取腾讯云代金券