Google Analytics Report API v4在没有明显原因的情况下多次返回503

问题描述

每天早晨,我们将从Google Analytics Reporting API v4获取前一天/周的电子商务产品数据。三年来我们一直在做同样的事情,并且报告格式没有改变。我们希望获得多个不同的时间范围。

这是一个示例请求。使用“ pagetoken”参数最多可以翻页总共50万行。我们按顺序执行此操作。

{
   "reportRequests":[
      {
         "metrics":[
            {
               "expression":"ga:productListViews"
            },{
               "expression":"ga:productListClicks"
            },{
               "expression":"ga:productDetailViews"
            },{
               "expression":"ga:productAddsToCart"
            },{
               "expression":"ga:quantityAddedToCart"
            },{
               "expression":"ga:productRemovesFromCart"
            },{
               "expression":"ga:quantityRemovedFromCart"
            },{
               "expression":"ga:productCheckouts"
            },{
               "expression":"ga:quantityCheckedOut"
            },{
               "expression":"ga:uniquePurchases"
            }
         ],"hidetotals":true,"dimensions":[
            {
               "name":"ga:productSku"
            },{
               "name":"ga:productBrand"
            },{
               "name":"ga:dimension1"
            }
         ],"pageSize":3000,"includeEmptyRows":true,"viewId":"169501676","dateranges":[
            {
               "startDate":"2020-08-17","endDate":"2020-08-17"
            }
         ],"pagetoken":"210000","hideValueRanges":true
      },{
         "metrics":[
            {
               "expression":"ga:itemQuantity"
            },{
               "expression":"ga:itemRevenue"
            }
         ],"hideValueRanges":true
      }
   ]
}

最近,API随机返回很多503错误。我们检查了此页面,这建议我们为1s,2s,4s,8s,16s实施指数补偿。代替建议的时间间隔,我们正在执行2h,2h,2h,2h,2h,但是错误仍然存​​在。 https://developers.google.com/analytics/devguides/reporting/core/v3/errors#handling_500_or_503_responses

我们已经检查了配额和限制,并确定我们不会超出配额和限制。 https://developers.google.com/analytics/devguides/reporting/core/v4/limits-quotas (无法发布没有10个信誉的图片

https://i.stack.imgur.com/jlZzV.png

https://i.stack.imgur.com/4q605.png

https://i.stack.imgur.com/2qTBI.png

如果有关系,所有请求都在Google App Engine python2标准环境上运行。

解决方法

尝试减少或拆分报告请求,这种错误可能会在繁重的工作或更大,更复杂的请求中导致。

,

由于即使分割请求并增加请求之间的延迟后,错误率仍会继续上升,所以我们最终放弃了Google Analytics(分析)并自行收集数据