在Rails和Backbone上使用mixpanel进行复杂的跟踪实现

god*_*yan 4 javascript tracking ruby-on-rails backbone.js mixpanel

我的客户希望在他们的Rails 3.2应用程序上建立一个复杂的混合面板跟踪系统,该系统包含广泛的backbone.js功能.

我想将mixpanel功能抽象为某种模块(而不是将调用分散到整个现有代码库中).

其中一个要求是mixpanel调用在成功操作之前不会被触发,因此我认为我不能将mixpanel调用附加到DOM元素.

我的另外想法是在javascript中创建某种中介对象,订阅需要跟踪的各种主干事件.但是,我需要跟踪的事件中只有大约一半是在骨干中,这让我觉得我根本不认为我可以在js中使用mixpanel.

也许一个lib类可以监听rails模型?

有什么想法或建议吗?

谢谢!

rei*_*npk 7

大约六个月前我们遇到了同样的问题,并决定构建一个开源的JavaScript库,它将在我们使用的所有分析服务中抽象出Mixpanel的功能,包括KISSmetrics,Google Analytics,Chartbeat等.

您可以访问http://segmentio.github.com/analytics.js查看

结果是一个简单的API,您可以在一行代码中调用analytics.track()或analytics.identify(),并将数据发送到所有不同的提供程序.

该库还具有辅助功能,如analytics.trackLink()和analytics.trackForm(),可以更轻松地跟踪出站点击和表单提交,这通常会导致页面在事件发送之前重新加载.这些功能引入了轻微的延迟,让事件发生.