Javascript Google Analytics有没有办法跟踪多个事件参数,比如Mixpanel?

Javascript Google Analytics有没有办法跟踪多个事件参数,比如Mixpanel?,javascript,google-analytics,Javascript,Google Analytics,鉴于: 我试过使用opt_标签,但它似乎只是一个字符串,不能像Mixpanel那样接受不同参数的散列 我怀疑其中一个解决方法是使用自定义变量?但这些文件似乎令人困惑。感谢您的建议。标签是可选的,因此我将其扩展为: _trackEvent(category, action, opt_label, opt_value, opt_noninteraction) 类别=‘游戏’ 事件=‘播放’ Label='Tetris'我不确定mixpanel是什么,所以我不知道您试图将分析与什么进行比较。如果

鉴于:

我试过使用opt_标签,但它似乎只是一个字符串,不能像Mixpanel那样接受不同参数的散列


我怀疑其中一个解决方法是使用自定义变量?但这些文件似乎令人困惑。感谢您的建议。

标签是可选的,因此我将其扩展为:

_trackEvent(category, action, opt_label, opt_value, opt_noninteraction)

类别=‘游戏’
事件=‘播放’

Label='Tetris'

我不确定mixpanel是什么,所以我不知道您试图将分析与什么进行比较。如果你提供了一个你试图收集的数据的具体例子,我可以给你一个更好的答案

假设你有一个视频播放器,你想跟踪人们观看视频的时间和暂停视频的次数,你可以这样做

<a href="#" onClick="_gaq.push(['_trackEvent', 'Games', 'Play', 'Tetris']);">Play</a>

显然,这是通用的,但正如您在gaq.push数组中看到的,
播放
暂停
是参数,
播放时间
单击暂停
是参数的可变值

虽然您可以在谷歌分析中实现这一点,但其他分析服务,如Mixpanel、KISSmetrics、Kontagent等,专门从事事件分析,并为您提供更大的灵活性。话虽如此,您可以破解Google Analytics事件模型,以获取所需内容

如果您想在Google Analytics中跟踪每个事件的多个参数,我建议您将要跟踪的参数塞进事件标签中。这是可行的,有两个原因:事件标签可能非常长(实际上长得离谱),而谷歌分析提供了灵活的过滤和分段选项

因此,为了扩展前面答案中讨论的示例,您可以有一个跟踪视频播放详细信息的事件,如下所示:

if (video == "pause") {
   var playTime = playduration(), // Total minutes of video watched
       clickPause = pauseNum(); // Total number of times video was paused

   _gaq.push(['_trackEvent', 'Video', 'Play', playTime]);
   _gaq.push(['_trackEvent', 'Video', 'Pause', clickPause]);
}
我们所做的只是将一些任意参数放入事件标签字符串中,这样我们以后就可以将它们取出。要分析结果,您可以过滤事件报告,以显示“MoreCatLolz”视频显示广告的次数:

或者,使用advanced segments和regex,您可以计算用户观看任何视频至少90%的访问次数:


要跟踪持久的用户数据,如姓名、加入日期、级别、购买数量等,我建议使用访客级别的自定义变量,这些变量自动包含在每个跟踪调用(包括事件)中,并允许您应用许多相同的分析技术。

GA在跟踪事件方面不如Mixpanel好(或一般情况下击中)属性,也许你应该重新思考你想/可以在GA中做什么。也就是说,有一种方法可以通过自定义维度和度量来实现你所需要的。这是一些关于它们的操作的信息,以及如何在管理面板中设置它们的说明,你可以在代码中找到如何使用它们。一些限制:

每个属性中有20个索引可用于不同的自定义维度,20个索引可用于自定义度量。360个帐户有200个索引可用于自定义维度,200个索引可用于自定义度量

无法删除自定义维度,但可以禁用它们

首先,您需要通过GA中的管理面板(管理->属性列->自定义定义->自定义维度/度量)添加自定义维度/度量

使用
analytics.js
,您可以在触发命中之前使用
set
设置事件属性,或者在触发命中时使用
send
设置事件属性。示例:

_gaq.push(['_trackEvent', 'Videos', 'Play', 'title:MoreCatLolz, 
    percentPlayed:63, adShown:true, res:480p, fullScreen:false']);
如果您不确定维度和度量之间的区别,请查看


我希望这对你有帮助

你使用的是什么类型的元素?是的,这些是标准的,但我想添加更多的参数。我将给出一个随机示例,但我认为它是有效的。假设用户对象名为person。我还想知道“person.name”和“person.location”谁单击了“Play”按钮,我如何跟踪它们?这可能是going超出了分析所能做的(至少很容易)。但假设你知道此人的姓名(因为他们登录了你的网站),您可以在
opt_value
中输入该值。在分析中,您还可以按位置向下钻取事件。有很多选项,您只需使用它们就可以了。google analytics会自动跟踪位置,所以这可能是一个不好的示例,但我想您会得到要点。如果我想说跟踪5个其他特定于用户的属性,\u trackEvent限制您可以发送的内容的数量。仅供参考,这些过滤器位于
行为->事件->顶级事件
下,可打开事件报告,然后单击标题下的
自定义
// set the dimension/metric values before the hit
ga('set', {
  'dimension5': 'custom dimension data',
  'metric5': 8000
});
// values set above are passed to GA along with the hit info
ga('send', 'event', 'someCategory', 'someAction');


// or alternatively
ga('send', 'event', 'someCategory', 'someAction', {
  'dimension5': 'custom dimension data',
  'metric5': 8000
});