如何衡量跨多个会话在页面上花费的时间?

时间:2013-05-20 10:46:08

标签: javascript jquery

我想测量一个用户在多个会话中处理流程所花费的时间。我看过一些单个会话的博客,但是多个会话看起来非常复杂。

假设我想跟踪从第A页开始到B的过程花费的时间C.C是最终退出点。但是用户可以在B页保存进程并退出,然后在一段时间后(可能是一两天)再次返回,然后继续完成该过程。

我应该采取什么方法来计算在流程上花费的总时间和没有会话? 我该如何计算?

任何想法,回应都将受到高度赞赏。

1 个答案:

答案 0 :(得分:0)

有很多方法可以解决这个问题。一种准确/可重用的方法是使用JavaScript跟踪在页面上花费的时间,并在每次他/她继续该过程时将该时间存储在该用户的数据库条目中。在每个后续会话中,您将开始计算再次花费的时间,并将其附加到您先前存储的现有时间。例如:

用户John登录并在第A页开始,持续2分钟。他继续在B页面上花费1分钟,然后退出。在注销时,您告诉您的后端“用户John花了3分钟处理该进程”,将该值存储在与用户John绑定的数据库条目中。 John下次登录时,他会在B页上花费2分钟,并在4分钟内完成C页。完成后(或注销时),您再次向后端发送一条请求,说“用户John花费了6分钟来完成流程”,并将其添加到现有值中。

作为一个无耻的插件,我建议使用我放在一起的JavaScript库来帮助跟踪用户花费的时间。它只会计算用户“实际”与您的网站进行交互的时间,而不是计算他们闲置或切换标签或转到其他应用程序的时间。它位于GitHub上:https://github.com/jasonzissman,其中有一个相关的StackOverflow答案:How to measure a time spent on a page?