结构
API:
- 初始化配置策略(上报策略,压缩方案)
- 对应不同业务,分类设计 api
数据加工:
- 根据不同业务,给收集上来的数据绑定不同的业务数据,以及相同的设备等信息
持久层:
- 对加工后的数据进行存储,选用 Sqlite 数据库,原生好用,效率高,吞吐量大,比文件优秀。且是原生,不对 app 增加额外的包体积
数据上报:
- 采用单线程的方式,逐一从数据库中读取数据,并压缩处理,上传至服务器,成功后清除数据库中对应数据。上传失败,则取消上报保留数据。
异常采集
- 对于线上的异常问题,我们可以追踪采集数据的页面流转信息,以及报错信息,可以快速定位异常点、以及产生异常的流程
- 针对项目的主流程、核心路径监控,计算真实转化率。
- 被 catch 住的异常,虽然没有导致 app 崩溃,但程序的功能已经变的不可用,所以这些 catch 的异常也是需要上报的