最近在开发一个后台管理系统(https://oa.hixiaoe.com),临近上线的前一周,产品组要求即时收集用户的所有行为,后台分析用户数据,为以后的业务发展,以及页面设计,用户体验等方面提供决策参考。例如:(1)用户浏览一篇文章,停留了多长时间,滚动条滚动到文章页面长度的百分之几的位置。(2)页面上的同类功能的不同按钮,点击的次数,点击时间。主要的逻辑就是某人在什么地方做了什么事情,做了多长时间,怎么做的,从哪里进入,然后又到了另一个哪里。用户敢在我这挥一挥衣袖,绝对带走他所有的云彩,甚至底裤;
问题是临近上线的前一周,产品组提这种需求,而且必须要按原项目计划如期上线,产品组还表达了中心思想:如果缺了这功能,就像一个不完美的男人进了女人堆,而无法了解到女人的心,更无法得到女人的爱。此时作为一个程序猿的你,是不是已经拔出了42米的长刀。
但是我们有一个叫某小小的猿类,不信邪,就是要挑战一下,在一周时间内证明自己是个完美的男人。
首先,系统的功能都已经开发完了,在页面的元素和js代码里一个一个埋点,显然工作量太大,而且侵入性太强,对现有系统造成破坏性很大;
能不能在现有的事件源上,加一个标记,页面渲染完之后,自动给事件源注册埋点函数,自动收集相关数据,然后异步提交到后台;经过一番论证和