RESTful API和Google Analytics

tdh*_*ter 12 python rest google-analytics flask

我正在使用Python(Flask)运行RESTful API.

我希望能够跟踪:

  • 提出了哪些要求
  • 这些请求何时发生
  • 发送响应需要多长时间

我想使用谷歌分析,因为它有很好的仪表板和扩展的功能.

我的问题

如何将Google Analytics实施到REST API中?
或者有没有人知道可以实现的另一个工具/库?

这就是我现在所发现的:

Ily*_*lya 8

实际上有两种方法可以将服务器端数据发送到Google Analytics.标准方法是GIF图像请求API,它与ga.js在客户端使用的API相同.Google已经开始开发一种名为Measurement Protocol的新REST API,但这仅限于开发人员预览版.

服务器端GA

尝试将服务器端数据发送到GA时,有一些问题需要解决.

与上面指出的@mehaase一样,gif API从请求中获取ip地址,因此所有服务器端请求都将显示为来自服务器位置的用户.测量协议也不允许您更改请求的IP.我将在这个答案中假设公开的gif API.

另一个问题是gif端点需要客户端cookie.您可以在每个请求中伪造此cookie,但这会导致每个事件看起来像一个新访问者.只要您将服务器端API和网站保留在单独的Google Analytics配置文件中,那就没问题.

另请注意,Google可能需要一个小时才能显示您发送的活动.这可能会使调试有点痛苦,所以请耐心等待.

以下是GA cookie中每个变量含义细分,以及将服务器端数据发送到GA 的良好node.js示例.

其他事件跟踪选项

尽管GA非常适合跟踪网站指标,但它并非专为跟踪服务器端事件而构建.称为事件跟踪的一类分析是用于缓和API使用跟踪的完美应用程序.

API通常如下所示:

analytics.track('API Response', {
    method  : 'POST',
    endpoint: '/comments'
    duration: 124
    status  : 500
});
Run Code Online (Sandbox Code Playgroud)

并让您查看有关每个事件和事件属性的频率和分布的报告您可以回答以下问题:今天发生了多少次/评论API调用?200多少是多少?有多少人的反应高于200毫秒?等等

以下是一些可以帮助您执行此操作的事件跟踪工具:

  1. Mixpanel
  2. KissMetrics
  3. Keen.IO

我是Segment.io的联合创始人,该公司为客户端,服务器端和移动分析提供简单的API.我们允许您从python,php,ruby,node,java,.net,javascript和iOS发送数据,我们会将其转发给Google Analytics,Mixpanel,KissMetrics,Keen.IO或任何其他支持的服务,你必须学习他们的API.

最后,这是我们的分析学院的一篇文章,解释了为什么事件跟踪很有用.