8

我喜欢图表

我很想得到一些数据并让它看起来很漂亮。但是,唉,我对什么被认为是最佳实践有点迷茫。

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

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

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

在这种情况下,您会考虑什么实用的解决方案?

4

2 回答 2

5

您可以通过使用附加的 $bucket 属性存储每个用户的用户特定事件来实现此目的,该属性具有每个用户唯一的值,如Mixpanel 文档中所述。如果您仍想使用 ruby​​ 来服务事件,请查看 Mixpanel 推荐的ruby​​ 客户端库 mixpanel_client看起来像是提到的 2 中维护得很好的选项。如果您这样做,那么您可以提供用户特定的事件,如下例所示(也在 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
于 2012-09-01T09:05:20.533 回答
1

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

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

此外,Keen IO 有一个“导入器”,它允许您将混音面板事件导出到您的 Keen IO 数据库中。

于 2013-10-26T00:16:11.363 回答