运维 关于 google analytics 里 event tracking 无法触发的问题

iamroody · 2013年06月11日 · 最后由 luikore 回复于 2013年06月12日 · 3643 次阅读

相信很多网站都使用了 google analytics 来统计网站的用户访问情况,有时候为了跟踪一些新功能,需要添加一些 event 事件来跟踪,但遇到一个问题,希望和大家讨论一下。

从 google 的官方文档上看,是给一些标签绑定 onclick 事件,来触发 event,问题是,在本地调试时(已经将 host 指向 analytics 所绑定的域名),却无法触发该事件,经过调试发现,如果把所要跳转的页面改成“#”,就是说仍然在当前页面,是可以触发的。

上网查了一下,有人说由于 onclick 的事件还没有执行完毕,页面就跳转了,导致没法触发事件,所以 hack 的方法是,执行完“_gaq.push”之后再触发 window.location.href 实现页面跳转。但是这种方法过于粗暴,不太想用。琢磨了一下,将 onclick 改成 onmousedown 能在一定程度上缓解改问题,也有可能说在 production 环境上,也许不会出现类似问题。

所以,想问诸位,有没有碰见类似问题,你是咋做的?

我看花瓣网在链图片原始网页时是 onclick 里 push 再没做其它。

#1 楼 @huobazi 在遇到该问题之前,也是认为没啥额外的工作要做。但是在本地调试时,确实遇到了快速跳转,导致没有触发成功的问题。

不加 onclick 也可以,链接上加上自定义的参数 (例如装成 utm_xxx 系列...) 然后在转向之后的页面上发请求...

post 请求麻烦点,要把参数也附带传递到 redirect 后的请求里,另外要注意重定向到站外的情况还是得先插 _gaq, 等个 90ms 左右再发请求

如果请求跑到 rails engine 里,就更麻烦了... 以前曾经把 devise 拷了遍...


换个角度看,其实追踪链接的 onclick 没什么意义... 目标页面也有 pv 追踪,分析其来源就可以了...

#3 楼 @luikore 哎,为了跟踪某个链接的点击,精确地分析一些用户的事件,把代码搞乱了,确实也很划不来。 你之前遇到过类似的问题?

#4 楼 @iamroody 以前整过带 ga, mixpanel, doubleclick, 各种追踪的... 还是 mixpanel 最好用,可以在服务器端用 api 发东西

需要 登录 后方可回复, 如果你还没有账号请 注册新账号