采集sdk 作为之家普遍采用的数据采集上报工具为各个业务线的app收集海量数据提供了有力的支持。通过采用代码埋点,sdk触发的形式满足了各个业务线对埋点数据精确控制、自定义数据和精细化数据分析的业务需求。但是复杂的自定义的数据格式和大量的上报数据量对埋点数据的查看和校对工作提出了很高的要求。
现有的埋点数据查看方法
实现原理和具体使用方法
基本原理
sdk方面采用在原有采集sdk中新建入口,并增加独立上报路径的方式。能够保证开启上报之后不影响现有采集上报逻辑,确保正式环境数据的稳定性,并将集成工作降到最低。
sdk新增埋点数据上报方法,数据采用压缩加密后传输,传递到后台服务进行解压、解密再次发送到web端,保证数据链路的安全。
数据的实时显示是埋点可视化功能的基础,我们选择使用websocket建立连接,并且通过动态码的形式将sdk、服务端和web最终串联形成完整的数据链路。
3.1 web端通过随机生成动态码按照已定规则拼接scheme跳转连接并形成二维码,同时依靠动态码和服务端建立socket连接。sdk通过扫码方式进入控制页面,从 scheme中获取动态码。通过上报接口将埋点数据和动态码上报到服务器,服务端解析数据并通过动态码区分将埋点数据分发给不同的前端页面,至此形成一个完整的数据传递链路。
3.2 sdk首次进入动态码生成规则
3.3 sdk 再次进入流程
埋点可视化提供历史记录查询界面 ,可以根据条件筛选查询历史数据。根据保存的数据结构和操作特点选用Elasticsearch进行数据存储保证了对大量数据的筛选性能。
使用方法
功能入口 请在OA搜索采集平台进入页面,点击服务系统选择埋点可视化功能。
集成方式
对于已经集成采集sdk的app只需要升级至最新版sdk;采集sdk具体集成和使用方式可以参考采集平台中详细的文档资料。
为了更加便捷的使用埋点可视化功能我们提供了两种开启方式。
3.1 扫码进入
对于拥有扫码能力的app 只需要简单适配 通过扫描二维码获取scheme进行跳转 就能进入到sdk埋点可视化控制页面,自动获取动态码点击开关就可打开埋点可视化功能。
web端默认进入扫码登录页
3.2对于没有扫码能力的app可以直接调用api进入控制页
web端通过使用输入APP端显示的动态码登录
登录完成后即可进入数据显示页面。页面头部显示了当前连接的设备和正在上报的APP名称,支持一键复制设备ID。页面主体实时显示上报数据并且根据常用的数据分类区分了 pv,click,,show,other 四种类型。点击item即可显示全部的详细数据。数据详情页面对埋点数据进行了排版,优先显示重点关注数据并对json数据进行了格式化方便查看和复制。
我们还对历史上报记录提供了丰富的查询功能,可以通过时间类型等筛选条件对已经上报的数据进行筛选查询.
点击查看详情就可看到全部数据
总结
埋点可视化功能致力于让查看埋点数据更加简单便捷。项目已经发布,我们还在不断进行丰富和完善。后期规划的单类型专注模式、数据实时筛选、查询数据导出功能、数据拷贝对比等功能已经正在开发当中。希望大家能够积极使用,提出宝贵意见。
作者简介
2016年加入汽车之家,目前任职于效能平台部-移动办公团队-研发组。主要负责汽车人Android端的开发维护工作。