使用Google Core Reporting API解决500个服务器错误

时间:2019-01-24 16:00:58

标签: r google-analytics google-analytics-api

在这一点上,我对如何解决查询问题一无所知。我们已经使用R包RGA大约一年了,没有任何问题。我有一个脚本,该脚本已从7个视图中获取数据,根据我们网站上的特定页面匹配会话并将它们汇总到我们的产品中。

这已经工作了好几个月了。我无处不在收到503和500个内部服务器错误,我不确定为什么。

我尝试将fetch.by状态更改为“月”,“季度”,“年”,“天”等...但是我认为初始查询太大。

我也尝试过更改max.results选项,一次只获取一个配置文件ID。我们有7个要处理。

date1 <- as.character(cut(Sys.Date(), "month"))
date1_name <- format(as.Date(date1), format = '%Y%m')

date2 <- as.character(Sys.Date())
date2_name <- format(as.Date(date2), format = '%Y%m')


dimensions <-  c("ga:yearMonth"
)
metrics <-  c("ga:sessions"
)

filters2 <- "ga:sessions>0"


#fetch trip level data for all users and for the micro-goal segment
# country_short_table

short_unq <- unique(country_short_table$destination)
brand_trip_unique <- unique(trip_country_brand$brand_trip)

brand_trip=1
brand_trip=73

all_sessions <- data.frame()
for (brand_trip in 1:length(brand_trip_unique)){
  mkt <- gsub('_.*', '', brand_trip_unique[brand_trip])
  trip <- gsub('.*_', '', brand_trip_unique[brand_trip])
  id <- as.character(ids[ids$market==mkt, 'id'])

  segment <- paste('ga:pagePath=~(reisen|circuit)/.*/', trip, sep = '')
  segment_def <- paste('users::condition::',segment,sep = '')

  table <- get_ga(profileId = id,
                  start.date = date1,
                  end.date = date2,
                  metrics = metrics, 
                  dimensions = dimensions
                  ,filters = filters2
                  ,segment = segment_def
                  ,samplingLevel = "HIGHER_PRECISION"
                  ,fetch.by = "quarter"
                  ,max.results = NULL
  )

  if (is.list(table)==T) {
        table$trip <- trip
        table$market <- mkt
        all_sessions <- bind_rows(all_sessions, table)
  } else {
        next()
  }


}

目标:您能推荐一些我可以避免此问题的方法吗,例如将日期查询分开并按一周中的几月或几天进行循环?我需要每天汇总的每月数据,但是我不确定如何编辑继承的脚本。

0 个答案:

没有答案