使用Mixpanel构建用户自定义分析仪表板

8

我喜欢图表。

我想得到一些数据并使其看起来漂亮。但是,我对什么是最佳实践有些迷茫。

我选择了Mixpanel(只是举个例子),因为它似乎非常容易跟踪自定义事件,并且没有像Google Analytics那样的子域限制。

假设我有100-1000+个用户拥有一个公开面向的账户,而且目前正在跟踪他们页面上的公共互动。使用Mixpanel,我可以看到数据,这很好,而且我已经将其细分到个人账户。目前为止一切都很好!

但是,我想向我的用户显示这些信息。这时,我的头开始疼了。我是否要安排一个cron job从mixpanel中拉取数据并将其写入相应的帐户?还是有更好的方法?我查看了mixpanel的API(我正在使用Ruby),但他们不断告诉我应该使用JavaScript API。但是,在使用JS时,如何防止其他人获取数据(即,什么阻止别人在控制台中伪造mixpanel api-post或查看我的私钥)?

在这种情况下,您会认为什么是实用的解决方案?


被接受的答案使用了 $bucket,但文档中指出它已经被弃用,任何带有 $bucket 的事件都不会显示在报告中!这对你仍然有效吗? - KJ Saxena
你说“我喜欢图表”就把我迷住了。 - Peter Nixey
2个回答

5
您可以通过在每个用户的特定事件中附加一个$bucket属性并为每个用户设置唯一值来实现此目标,具体请参见Mixpanel文档Mixpanel docs。如果您仍然想使用Ruby来提供这些事件,请查看Mixpanel推荐的ruby客户端库。在提到的两个选项中,mixpanel_client似乎是更受关注的选项。如果您选择了该选项,则可以像下面的示例一样提供用户特定的事件(该示例也在gem的自述文件中):
data = client.request do
  # Available options
  resource  'events/properties'
  event     '["test-event"]'
  name      'hello'
  values    '["uno", "dos"]'
  timezone  '-8'
  type      'general'
  unit      'hour'
  interval   24
  limit      5
  bucket    'contents'
  from_date '2011-08-11'
  to_date   '2011-08-12'
  on        'properties["product_id"]'
  where     '1 in properties["product_id"]'
  buckets   '5'
end

1
你可以尝试使用像Keen IO这样的服务,它将允许您生成加密的作用域写入和读取API密钥。Keen IO专为可定制和编程化分析功能而构建,例如向客户公开分析数据,而MixPanel更适用于在其用户界面中探索数据。加密作用域密钥的想法是他们永远无法访问您的帐户,只能访问您想要他们看到的数据。您可以轻松地为事件打上客户ID标签,然后使用Scoped Keys确保您只向客户展示他们自己的数据。

https://keen.io/docs/security/#scoped-key

此外,Keen IO 还有一个"导入工具", 可以将您的 Mixpanel 事件导出到 Keen IO 数据库中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接