From e8b05b3a41ec6cdebda2c881aca8cfd48dadf91d Mon Sep 17 00:00:00 2001 From: Ben Halpern Date: Fri, 28 Sep 2018 16:52:06 -0400 Subject: [PATCH] Modify Article Analytics Fetch (#762) * Add page_views_count to articles and track from analytics * Modification in google analytics fetch * Chunk article requests in analytics requests * Fix test * Fix test in analytics --- app/controllers/analytics_controller.rb | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/app/controllers/analytics_controller.rb b/app/controllers/analytics_controller.rb index e532d35cb..4356b6073 100644 --- a/app/controllers/analytics_controller.rb +++ b/app/controllers/analytics_controller.rb @@ -26,11 +26,13 @@ class AnalyticsController < ApplicationController end def fetch_and_update_page_views_and_reaction_counts(qualified_articles) - pageviews = GoogleAnalytics.new(qualified_articles.pluck(:id)).get_pageviews - page_views_obj = pageviews.to_h - qualified_articles.each do |article| - article.update_columns(page_views_count: page_views_obj[article.id], - previous_positive_reactions_count: article.positive_reactions_count) + qualified_articles.each_slice(25).to_a.each do |chunk| + pageviews = GoogleAnalytics.new(chunk.pluck(:id)).get_pageviews + page_views_obj = pageviews.to_h + chunk.each do |article| + article.update_columns(page_views_count: page_views_obj[article.id].to_i, + previous_positive_reactions_count: article.positive_reactions_count) + end end end