数字基建系列(一)数分如何参与埋点工作

正如开篇所说,分析师应该协同产研一起进入埋点工作中。由于大部分公司的埋点系统或平台都不太一致,这里也仅以笔者的经验进行简单分享。首先,埋点的整体流程大同小异,产品过稿–>埋点设计–>埋点开发–>埋点测试与验收–>上线后统计需求。

产品过稿

产品过稿是了解埋点需求的最直接方式,在这期间你需要仔细理解产品稿的业务逻辑,并在脑中形成埋点数据框架,有疑问需及时提出。一般产品并不会特别清楚最终需要统计哪些数据,因此就会要求数分将所有可能的点都埋上。

这个时候有人可能就会疑惑了,那全埋了工作量岂不是很大;没埋全到时候出不了数怎么办。其实日常业务常见的统计需求就是点击率,因此产品稿的所有点击事件都需要埋上,每个点击事件都会对应着一个曝光,但大多数情况下曝光都是公用的或着可替代的,所以对于曝光事件只需要埋上典型性的和特异性的即可。

除此之外,还需要关注是否有特别强调的点或者关于时间长度的点,这类点也是必埋的。下面是一个简单的首页-meTab优化产品稿,为了避免不必要的麻烦,这里隐去了公司的信息;为了简化,这里隐去了不必要的信息。

可以看到,黄色标注点为此次改动,改动细节如右边的详细信息。因为隐去了一些信息,所以接下来的埋点设计只关注个人信息的状态、头像、昵称;VIP状态、运营banner位、底部tab【我】。

埋点设计

根据产品稿厘清业务逻辑,然后设计出相关的埋点文档交由研发进行开发。常见的以三段式【事件类型/页面/事件】和四段式【事件类型/页面/模块/事件】为主,但对于后续开发和统计都没有影响,因此可根据个人逻辑理解进行设计。需要注意的是埋点命名采用驼峰命名,且需要记录主要参数。

URL 页面 说明 参数 备注
/event/homePage/enter 首页 进入页面 login_status(0:未登陆,1:已登陆) 已有点,新增参数login_status
/click/homePage/Button/me 首页-底栏 点击底栏-我 login_status 已有点,新增参数login_status
/event/me/enter 个人主页 进入页面 login_status
me_vip_type(0:VIP已过期,1:立即开通,
2:某日到期,3:今天到期,4:某某某)
已有点,新增参数me_vip_type
/click/me/nickName 个人主页 点击昵称 login_status,me_vip_type
/click/me/myPic 个人主页 点击个人头像 login_status,me_vip_type
/event/bannSDK/show banner位 banner曝光 poseid,activityid等 沿用banner设计,特殊埋点仅供分享使用
/click/bannSDK/click banner位 banner点击 poseid,activityid等

上面案例可以看出,有些埋点已经存在但需要新增一些参数,这时候需要在文档中进行备注提醒,防止埋点重复开发并造成新旧埋点断层。这就引出了埋点管理的一个难题,多人协作时,如何确认该埋点是否已存在。一般在埋点体系不完善的情况下,都是手动测试一遍。

像一些特殊的埋点,例如banner位等都是单独设计的,内部通过一些参数区分banner的内容和位置。且大多数banner是H5页面的,所以这里加上banner的埋点也是为了方便介绍下面的埋点测试。

埋点开发

这个环节是由研发进行的,但在开发过程中经常会有一些问题需要数分及时解答,例如定义错误、参数不明确等,因此一个优秀的埋点文档能极大的提高双方的效率。

埋点测试

埋点开发完以后,就需要数分进行测试和验收了。常见的埋点分为客户端埋点和H5(前端)埋点,客户端又分为安卓和iOS。一般情况下,安卓采用ADB测试,iOS采用mac控制台测试,H5页面采用charles抓包

⚠️注意:下述配置方式为MAC,Windows电脑可自行查找相关内容。

安卓-ADB测试

安装:安装xcode和Homebrew,然后通过终端执行命令brew cask install android-platform-tools

连接:打开开发者模式,连接安卓设备和mac,输入adb devices 命令即可。具体如下:

  • 打开 Android 设备的系统设置,在设置列表末尾点击「开发者选项」(如果没找到「开发者选项」,需要先进去「关于手机」连续点击7次「版本号」(MIUI为「MIUI版本」)直至提示「开发者模式已启用」)
  • 启用开发者模式,打开 「USB 调试」,数据线连接 Android 设备和 你的 Mac 电脑
  • 在 Android 设备上允许调试,USB 连接选择 「文件传输」/「MTP传输」/「媒体设备传输」,只要不是选「仅充电」就行了
  • 在 Mac 的终端中再次输入 adb devices 命令,如果 List of devices attached 下方出现了你的设备,说明连接成功

测试:在终端输入adb logcat | grep "keyName"即可。

  • 其中【keyName】为APP埋点关键字,过滤掉非测试埋点的日志。
  • 在设备上进行相关操作(例如滑动、点击等),有埋点的相关信息则会出现在终端屏幕上

⚠️注意:配置是一次性的。首次配置后,只需要连接电脑和手机,打开调试模式,终端输入adb logcat | grep "keyName"即可

iOS-MAC控制台

连接:从启动台找到控制台程序打开,数据线连接 ISO设备和你的 Mac 电脑,选择信任,选择当前设备名称即可。

测试:在搜索栏输入keyName即可过滤非测试埋点的日志,后续测试方式同安卓。

H5-charles

安装:官网下载后,直接安装即可

连接:打开charles,安装根证书,设置代理即可

  • mac安装根证书:Help -> SSL Proxying -> Install Charles Root Certificate。安装完成后双击该证书进行信任设置为"始终信任"。(也可搜索钥匙串访问进入查看所有证书,双击Charles相关证书进行信任设置)

  • 移动设备安装根证书:Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or a Remote Browser会弹出提示,然后在移动设备浏览器输入提示中的url即可下载。下载完成后可在描述文件中找到相关证书进行信任设置

  • 设置代理:

    • charles设置:Proxy->Proxy Setting在Proxies界面设置端口号为8888,并点选Enable transparent HTTP proxying。
    • Proxy->SSL Proxying Setting在SSL Proxying界面增加域名,一般为公司指定前缀,若测试时"keyName"能区分到测试埋点,也可设置为任意域名*:*
    • 获取电脑ip:在终端输入ifconfig en0即可在输出信息的关键字inet后查到本机IP地址。(Charles也能查询本机地址,但有时候由于内部VPN的关系使得IP地址不正确,所以不建议通过Charles查找)
    • 设置手机代理:长按wifi名进入网络设置,选择配置代理->手动,服务器填上获取到的电脑IP地址,端口填Proxy Setting设置的8888。

测试:在Filter栏输入keyName即可过滤非测试埋点的日志,然后测试H5相关的埋点即可。

⚠️注意:

  • 证书安装和代理设置都是一次性的,首次配置后,只需要打开charles,在手机上设置代理的IP地址和端口即可

  • charles也可测试客户端埋点,但时效性较差

  • 这些基础足以应付日常测试,复杂的测试建议请求测试同学帮助。其他charles操作可参考Charles抓包

由于埋点测试含有公司信息,为了避免不必要的麻烦,就不截图展示了。测试过程重点关注上报机制是否正确,例如曝光的时机是在全露出还是只要露出一点就算;参数是否正确,有没有缺失等;url是否正确,有无拼写错误等。当所有埋点都正常测试到即可验收了,后续等待研发上线即可。

数据统计

当埋点正式上线后,则可以在相关线上日志表中根据url统计需求数据。如果在统计数据过程中发现埋点异常、丢失或需要增加额外埋点。都需要和产研沟通,在下个版本修复或增加。H5埋点不跟版,可优先修改。

总结

本文主要是帮助没有埋点经历的同学对埋点工作有个大致的理解,而有过埋点经历的同学则入乡随俗,以当前公司标准为主。

共勉~

数字基建系列(一)数分如何参与埋点工作相关推荐

  1. 数字基建系列(二)科学搭建指标体系

    数字基建系列(二)科学搭建指标体系 指标体系可以通过一系列有联系的特征来洞察全局,推动运营.指标使得业务可拆解量化,体系则是观察维度,简单的说就是维度+度量.搭建指标体系可以依照一定的科学方法论使得搭 ...

  2. 【知识点总结】数字电子技术(数电)

    数字电子技术 总结内容: 内容包括: 本逻辑门(与.或.与非.或非.异或门).三态门.OD门(OC门).传输门 .组合逻辑电路的分析方法和设计方法.编码器.译码器.数据选择器.数值比较器.加法器.锁存 ...

  3. ​数字基建狂潮中:区块链处于什么位置?

    本轮数字基建究竟会给我们带来些什么?区块链又将在其中扮演什么样的角色,并如何发展?碳链价值有幸邀请到了国盛证券区块链研究院院长宋嘉吉.蚂蚁区块链高级架构师吴方.中国信息通信研究院区块链高级研究员和涛, ...

  4. 咖说 | ​数字基建狂潮中:区块链处于什么位置?

    收集一众行业大咖观点,探索区块链商业及应用.百家争鸣.百花齐放,说理.解密.预测和八卦,了解行业内幕,看咖说就够了! 投稿请联系 :tougao@conflux-chain.org 本文转自" ...

  5. 【课程汇总】OpenHarmony全场景Demo数字管家系列课(附链接)

    小孩放学了,做作业的时间到,窗帘.护眼灯自动打开,关掉电视和扫地机,给小孩一个安静舒适的学习环境:碰到学习难题,可以随时请求你的远程指导:晚上回家休息了,选择舒适的氛围灯,伴随着睡眠音乐进入梦乡:出门 ...

  6. 数分-理论-大数据3-HDFS

    数分-理论-大数据3-HDFS(分布式文件系统) (数据分析系列) 文章目录 数分-理论-大数据3-HDFS(分布式文件系统) 1知识点 2具体内容 2.1背景 2.2简介 2.3体系结构 2.4存储 ...

  7. 刷B站学数分Day3|AB试验(上)

    开个系列<刷B站学数分>,总结整理B站上优质的数据分析资源- 目录 0 参考资料 1 AB试验的原理 1.1 来源于假设检验 1.2 一句话概括 2 AB实验中的辛普森悖论 2.1 辛普森 ...

  8. AMNO.6 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123 输入 一个不大于5位的数字

    题目描述 给出一个不多于5位的整数,要求 1.求出它是几位数 2.分别输出每一位数字 3.按逆序输出各位数字,例如原数为321,应输出123 输入 一个不大于5位的数字 输出 三行 第一行 位数 第二 ...

  9. 清华大学软件学院院长王建民:以数字基建为契机,加强工业互联网大数据软件建设...

    来源:中国电子报 作者:清华大学软件学院院长王建民 本文约3250字,建议阅读5分钟 工业互联网大数据软件基础设施建设对工业领域激活大数据资产.导入智能化技术具有重大基础支撑作用. 编者按:3月4日, ...

最新文章

  1. 利用OpenCV的inpaint函数实现图像的污点修复
  2. 29 个你必须知道的 Linux 命令
  3. linux下phpMyAdmin泛起1045 - Access denied for 的措置
  4. 小米手机能用上鸿蒙吗,鸿蒙系统小米手机能用吗?鸿蒙系统支持第三方手机!
  5. sklearn自学指南(part39)--Birch
  6. Linux命令中的$()和${}的区别
  7. LeetCode 1065. 字符串的索引对
  8. 升级步骤linux_开发人员福音,在win10系统上安装linux子系统
  9. Transaction rolled back because it has been marked as rollback-only 原因 和解决方案
  10. 那些长期单身的人,到底在想什么?
  11. 【教程:利用Axure快速原型工具制作电影信息网站】——小白也会,傻瓜式做法,简易快速!!!可应对(毕业)课程设计喔!!
  12. mysql显示1146_MySQL查询报错:ERROR 1146 (42S02): Table 'craw.sitePageConfig' doesn't exist
  13. 【饥荒】关于随机地图生成的方式
  14. scratch和平使者 电子学会图形化编程scratch等级考试一级真题和答案解析2022年12月
  15. 把飞书融入日常学习流程:一个人的飞书也挺好
  16. HDU 2188-悼念512汶川大地震遇难同胞——选拔志愿者
  17. linux hba卡 存储配置,Redhat安装hba卡,配置emc powerpath,配置LVM
  18. 示坡线高程判断_【专题突破】等高线地形图的判读技巧
  19. Matlab Robotic Toolbox安裝
  20. [GXOI/GZOI2019]逼死强迫症 题解

热门文章

  1. 2022-2027年中国共享自行车行业发展监测及投资战略研究报告
  2. cosine similarity 余弦相似度
  3. 小米频繁投资内容渠道 是回归理性还是曲线救赎
  4. 我的世界服务器退出信息,我的世界模仿他人进入/退出服务器
  5. 天池数据竞赛docker提交操作学习
  6. 华东师范大学计算机学院和软件学院,华东师大撤销计算机科学与软件工程等学院建制,成立信息学部...
  7. 【LeetCode】不含重复字符的最长子字符串
  8. “(CRON) info (No MTA installed, discarding output)”
  9. A20.从零开始前后端react+flask - 查找数据
  10. 华为鸿蒙电池,华为重拳出击,120Hz+鸿蒙OS+5000mAh大电池,还有6000万五摄