Ruby on rails 使用mixpanel为用户构建自定义分析仪表板

Ruby on rails 使用mixpanel为用户构建自定义分析仪表板,ruby-on-rails,api,analytics,mixpanel,Ruby On Rails,Api,Analytics,Mixpanel,我喜欢图形 我很想得到一些数据,让它看起来漂亮。但遗憾的是,我有点迷茫于什么才是最佳实践 我选择了mixpanel(仅作为一个示例),因为我似乎非常容易跟踪自定义事件,并且没有像Google Analytics这样的子域限制 假设我有100-1000多名用户拥有一个账户(面向公众),我目前正在跟踪他们的页面获得的公共交互。使用mixpanel,我可以看到可爱的数据,并且我已经将其细分为各个帐户。到目前为止,一切都很好 但是,我想向我的用户展示这些信息。我的头开始痛了。我是否安排了cron作业,从

我喜欢图形

我很想得到一些数据,让它看起来漂亮。但遗憾的是,我有点迷茫于什么才是最佳实践

我选择了mixpanel(仅作为一个示例),因为我似乎非常容易跟踪自定义事件,并且没有像Google Analytics这样的子域限制

假设我有100-1000多名用户拥有一个账户(面向公众),我目前正在跟踪他们的页面获得的公共交互。使用mixpanel,我可以看到可爱的数据,并且我已经将其细分为各个帐户。到目前为止,一切都很好

但是,我想向我的用户展示这些信息。我的头开始痛了。我是否安排了cron作业,从mixpanel中提取数据并将其写入各自的帐户?还是有更好的办法?我研究了mixpanel的api(我使用的是Ruby),但他们一直告诉我应该使用javascript api。但是在使用JS时,如何防止其他人获取数据(例如,是什么阻止某人在控制台中伪造mixpanel api帖子,或者查看我的私钥?)


在这种情况下,你会考虑什么样的实际解决方案? 您可以通过存储每个用户的特定于用户的事件,并附加一个$bucket属性,该属性的值对于每个用户都是唯一的,如这里的mixpanel文档所述。如果您仍然希望使用ruby来为事件提供服务,请查看Mixpanel推荐的 看起来像是上面提到的2个选项中维护较多的选项。如果您这样做,那么您可以提供特定于用户的事件,如下面的示例所示(这也在gem的自述中):


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


此外,Keen IO有一个允许您将mixpanel事件导出到Keen IO数据库中的选项。

接受的答案使用$bucket,但文档称此选项已被弃用,任何带有$bucket的事件都不会显示在报告中!这对你还有用吗?你让我参加“我爱图表”
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