如何用javascript编程创建新的Google Analytics会话/访问者

如何用javascript编程创建新的Google Analytics会话/访问者,javascript,google-analytics,single-page-application,Javascript,Google Analytics,Single Page Application,我有一个在公用电脑上运行的水疗中心。该应用程序在一段时间不活动后重置,我希望重置后发生的任何分析显示为不同的会话/用户。我该怎么做 我已尝试删除uuutm cookies(离开uuutmv),进一步的调用显示为不同的用户,但我丢失了第一个跟踪事件的自定义变量,无论我是在删除cookie之后还是在跟踪下一个事件之前重置它们。看起来切换到Universal并发送一个字段是我能得到的最好结果。如果将来有人在寻找这个问题的答案,下面是我如何实现它的 // set the analytics sessio

我有一个在公用电脑上运行的水疗中心。该应用程序在一段时间不活动后重置,我希望重置后发生的任何分析显示为不同的会话/用户。我该怎么做


我已尝试删除uuutm cookies(离开uuutmv),进一步的调用显示为不同的用户,但我丢失了第一个跟踪事件的自定义变量,无论我是在删除cookie之后还是在跟踪下一个事件之前重置它们。

看起来切换到Universal并发送一个字段是我能得到的最好结果。

如果将来有人在寻找这个问题的答案,下面是我如何实现它的

// set the analytics session and visitor timeout to 10 milliseconds
_gaq.push(['_setSessionCookieTimeout', 10]);
_gaq.push(['_setVisitorCookieTimeout', 10]);
// make a fake page view, 10 milliseconds after this, the session will time out
_gaq.push(['_trackPageview', '/session/reset/']);

// after a short delay, set the analytics session and visitor timeout to 5 minutes,
// this should start a new session
setTimeout(function() {
    _gaq.push(['_setSessionCookieTimeout', 300000]); // 5 minutes * 60 * 1000 = 300000
    _gaq.push(['_setVisitorCookieTimeout', 300000]);
    // log a page view...
    _gaq.push(['_trackPageview', '/some/page/url/']);
}, 200);
。。。我不确定是否需要第二个页面视图(我的解决方案需要它),但cookie超时更新似乎会触发一个新的会话和访问者id


另外,您可能希望将新的超时值设置为5分钟以上(默认值为30分钟或1800000毫秒)

我假设您已经尝试创建另一个存储自定义变量数据的cookie?切换到Universal Analytics(最终您必须)并将会话超时设置为与应用程序的会话超时相匹配@EikePierstorff All用户活动不会生成分析事件,但会重置我们的非活动计时器。还有一些操作会导致应用程序立即重置。我在这里讨论了我能想到的以编程方式重新启动会话的唯一方法:-但实际上我会说答案是“你不能”。也许您真的应该研究通用分析,并尝试将您的自定义变量转换为自定义度量和维度(存储在服务器端,而不是cookie中)。但是,与自定义变量不同的是,无法通过代码检索值。如果您最终能够在此处添加一条小注释,这将是一件非常美妙的事情,如果这在生产站点中确实能按预期工作的话。@Eikepierstorf,使用
sessionControl:“start”
发送事件会导致分析中的新访问-我无法将其算作新的唯一用户。这就是说,新的访问应该给我所需要的粒度。