我们在红点push 的到达和点击的地方,都加了布点。后来功能上了线,发现,每天的点击都比到达高!

这肯定不科学。

赶紧查问题,打开程序,发红点,关闭程序,布点上传。没问题。数据部门可以收到红点啊!

从此我就觉得,不是我客户端的问题。后来也懒得排查。

后来我们老大催促我,好吧,再跟进一下。

沉迷于该问题,不能自拔,吃饭睡觉的时候,想的都是这个问题。我现在测得场景没有问题,那么到底是什么场景下有问题呢?因为用户的场景都是很复杂的。而且数据部门,给出来了某个用户的数据,每天就只有点击没有到达!

终于想到了一种情况,应用没有启动的时候,可以收到push 吗? 尝试下了,可以。那么这种情况下,布点系统是不是没有初始化? 配合测试排查,发现是有初始化的。布点是肯定打点了,那么还有什么场景,导致布点没有上报到数据部门吗?

如果这个到达布点到了,但是如果用户长时间没有启动程序,或者用户一键清理内存,把进程杀死了,就不会些写文件,因为布点系统是有缓存的,超过40条才会写文件。妈的,终于查到问题了。

vivo红点点击比到达高的问题查到原因了。因为vivo电子书没有启动的时候,可以收到红点push,这时候电子书进程会启动,同时会布点,但是布点不会写在文件里面,因为只有布点条数超过40,才会触发写文件。这种情况下,如果用户长时间没有点击电子书启动,或者用户一键清理内存,把我们进程杀死,布点就不会写到文件里面,造成遗漏。后面我们会把到达改成实时布点。前期数据请以点击为准,因为点击必达到。情况比较复杂,造成排查问题时间比较久,多有不便,敬请谅解。

总结

1.你测得这种情况下没有问题,只能说明,这种情况下没有问题。不代表代码没有问题!有问题的场景,你需要想出来!

2.问题可能很难查,但是花时间,去思考什么场景下有问题,大部分都可以找到问题的。

最新文章

  1. twrp编译步骤 (CWM也差不多)
  2. Android Studio插件整理
  3. 使用__slots__
  4. Ten Tips for Writing CS Papers, Part 1
  5. jsp、freemarker、velocity区别详解
  6. Python小白绘图 哆唻A梦 turtle真的很强大!
  7. vue -webpack.dev.config.js模拟后台数据接口
  8. puppet(4)-类、模版语言、模块
  9. extJs相关名字解释
  10. python 批量下载图片
  11. ios实例开发精品源码文章推荐(8.22)
  12. sql存储过程算法
  13. Delphi如何找到出错行的行数!!
  14. 【读书笔记】iOS-网络-同步请求,队列式异步请求,异步请求的区别
  15. Django 处理modelform错误信息
  16. 第二篇:服务消费者(rest + ribbon)
  17. [MyBean说明书]-如何制作BPL插件
  18. jquery ajax中 php前台后台文件中编辑都是uft-8,返回数据还是乱码
  19. 7.Classes-类(Dart中文文档)
  20. 【Leetcode】109. Convert Sorted List to Binary Search Tree

热门文章

  1. BZOJ3680:吊打XXX(模拟退火)
  2. POJ 3635 Full Tank? 【分层图/最短路dp】
  3. (第五场)G max 【数论】
  4. 【luogu P1314 聪明的质监员】 题解
  5. Android学习笔记_56_应用Tween动画 (渐变、缩放、位移、旋转)
  6. LeetCode16.最接近的三数之和 JavaScript
  7. SpringBoot非官方教程 | 第十三篇:springboot集成spring cache
  8. ACL常用命令及工作原理
  9. python之ProcessPoolExecutor
  10. vue入门: 实现选中并显示修改功能