diff options
| author | felt <felt@chromium.org> | 2016-02-23 17:41:00 -0800 |
|---|---|---|
| committer | Commit bot <commit-bot@chromium.org> | 2016-02-24 01:43:27 +0000 |
| commit | 15e904639454f9b5b0313eea8d2a72b8d967942a (patch) | |
| tree | e4cd667e7389f1bdbf26b3b2ee7dfeef59b7a41f | |
| parent | dfbf0696b713398f9e30cb5db74aae5c1b6d25fa (diff) | |
| download | chromium_src-15e904639454f9b5b0313eea8d2a72b8d967942a.zip chromium_src-15e904639454f9b5b0313eea8d2a72b8d967942a.tar.gz chromium_src-15e904639454f9b5b0313eea8d2a72b8d967942a.tar.bz2 | |
Record Site Engagement Scores for HTTP and HTTPS pages separately
I'm trying to look at how people spend time on HTTP vs HTTPS pages;
ideally, more engagement will happen on HTTPS.
BUG=588941
Review URL: https://codereview.chromium.org/1725633002
Cr-Commit-Position: refs/heads/master@{#377182}
4 files changed, 57 insertions, 0 deletions
diff --git a/chrome/browser/engagement/site_engagement_metrics.cc b/chrome/browser/engagement/site_engagement_metrics.cc index 1159253..3dd3a10 100644 --- a/chrome/browser/engagement/site_engagement_metrics.cc +++ b/chrome/browser/engagement/site_engagement_metrics.cc @@ -33,6 +33,12 @@ const char SiteEngagementMetrics::kMedianEngagementHistogram[] = const char SiteEngagementMetrics::kEngagementScoreHistogram[] = "SiteEngagementService.EngagementScore"; +const char SiteEngagementMetrics::kEngagementScoreHistogramHTTP[] = + "SiteEngagementService.EngagementScore.HTTP"; + +const char SiteEngagementMetrics::kEngagementScoreHistogramHTTPS[] = + "SiteEngagementService.EngagementScore.HTTPS"; + const char SiteEngagementMetrics::kOriginsWithMaxEngagementHistogram[] = "SiteEngagementService.OriginsWithMaxEngagement"; @@ -85,6 +91,11 @@ void SiteEngagementMetrics::RecordEngagementScores( for (const auto& value : score_map) { UMA_HISTOGRAM_COUNTS_100(kEngagementScoreHistogram, value.second); score_buckets.lower_bound(value.second)->second++; + + if (value.first.SchemeIs(url::kHttpsScheme)) + UMA_HISTOGRAM_COUNTS_100(kEngagementScoreHistogramHTTPS, value.second); + else if (value.first.SchemeIs(url::kHttpScheme)) + UMA_HISTOGRAM_COUNTS_100(kEngagementScoreHistogramHTTP, value.second); } for (const auto& b : score_buckets) { diff --git a/chrome/browser/engagement/site_engagement_metrics.h b/chrome/browser/engagement/site_engagement_metrics.h index c424824..0d249e7 100644 --- a/chrome/browser/engagement/site_engagement_metrics.h +++ b/chrome/browser/engagement/site_engagement_metrics.h @@ -54,6 +54,8 @@ class SiteEngagementMetrics { static const char kMeanEngagementHistogram[]; static const char kMedianEngagementHistogram[]; static const char kEngagementScoreHistogram[]; + static const char kEngagementScoreHistogramHTTP[]; + static const char kEngagementScoreHistogramHTTPS[]; static const char kOriginsWithMaxEngagementHistogram[]; static const char kOriginsWithMaxDailyEngagementHistogram[]; static const char kPercentOriginsWithMaxEngagementHistogram[]; diff --git a/chrome/browser/engagement/site_engagement_service_unittest.cc b/chrome/browser/engagement/site_engagement_service_unittest.cc index 14f0e93..edd26f6 100644 --- a/chrome/browser/engagement/site_engagement_service_unittest.cc +++ b/chrome/browser/engagement/site_engagement_service_unittest.cc @@ -736,6 +736,10 @@ TEST_F(SiteEngagementServiceTest, CheckHistograms) { histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementScoreHistogram, 0); histograms.ExpectTotalCount( + SiteEngagementMetrics::kEngagementScoreHistogramHTTP, 0); + histograms.ExpectTotalCount( + SiteEngagementMetrics::kEngagementScoreHistogramHTTPS, 0); + histograms.ExpectTotalCount( SiteEngagementMetrics::kOriginsWithMaxEngagementHistogram, 0); histograms.ExpectTotalCount( SiteEngagementMetrics::kOriginsWithMaxDailyEngagementHistogram, 0); @@ -753,6 +757,10 @@ TEST_F(SiteEngagementServiceTest, CheckHistograms) { 0, 1); histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementScoreHistogram, 0); + histograms.ExpectTotalCount( + SiteEngagementMetrics::kEngagementScoreHistogramHTTP, 0); + histograms.ExpectTotalCount( + SiteEngagementMetrics::kEngagementScoreHistogramHTTPS, 0); histograms.ExpectUniqueSample(SiteEngagementMetrics::kMeanEngagementHistogram, 0, 1); histograms.ExpectUniqueSample( @@ -796,6 +804,10 @@ TEST_F(SiteEngagementServiceTest, CheckHistograms) { // Recorded per origin. histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementScoreHistogram, 1); + histograms.ExpectTotalCount( + SiteEngagementMetrics::kEngagementScoreHistogramHTTP, 0); + histograms.ExpectTotalCount( + SiteEngagementMetrics::kEngagementScoreHistogramHTTPS, 1); histograms.ExpectUniqueSample( SiteEngagementMetrics::kOriginsWithMaxEngagementHistogram, 0, 2); histograms.ExpectUniqueSample( @@ -861,6 +873,10 @@ TEST_F(SiteEngagementServiceTest, CheckHistograms) { // Recorded per origin. histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementScoreHistogram, 4); + histograms.ExpectTotalCount( + SiteEngagementMetrics::kEngagementScoreHistogramHTTP, 2); + histograms.ExpectTotalCount( + SiteEngagementMetrics::kEngagementScoreHistogramHTTPS, 2); histograms.ExpectUniqueSample( SiteEngagementMetrics::kOriginsWithMaxEngagementHistogram, 0, 3); histograms.ExpectUniqueSample( @@ -933,6 +949,10 @@ TEST_F(SiteEngagementServiceTest, CheckHistograms) { 4); histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementScoreHistogram, 7); + histograms.ExpectTotalCount( + SiteEngagementMetrics::kEngagementScoreHistogramHTTP, 4); + histograms.ExpectTotalCount( + SiteEngagementMetrics::kEngagementScoreHistogramHTTPS, 3); histograms.ExpectUniqueSample( SiteEngagementMetrics::kOriginsWithMaxEngagementHistogram, 0, 4); histograms.ExpectBucketCount( diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml index 239659a..80fdff2 100644 --- a/tools/metrics/histograms/histograms.xml +++ b/tools/metrics/histograms/histograms.xml @@ -47080,6 +47080,30 @@ http://cs/file:chrome/histograms.xml - but prefer this file for new entries. </summary> </histogram> +<histogram name="SiteEngagementService.EngagementScore.HTTP"> + <owner>calamity@chromium.org</owner> + <owner>dominickn@chromium.org</owner> + <owner>felt@chromium.org</owner> + <summary> + Distribution of the engagement scores accumulated by a user, recorded at + startup per non-incognito profile, and then upon the first + engagement-increasing event every hour thereafter. Limited specifically to + HTTP URLs. + </summary> +</histogram> + +<histogram name="SiteEngagementService.EngagementScore.HTTPS"> + <owner>calamity@chromium.org</owner> + <owner>dominickn@chromium.org</owner> + <owner>felt@chromium.org</owner> + <summary> + Distribution of the engagement scores accumulated by a user, recorded at + startup per non-incognito profile, and then upon the first + engagement-increasing event every hour thereafter. Limited specifically to + HTTPS URLs. + </summary> +</histogram> + <histogram name="SiteEngagementService.EngagementScoreBucket" units="%"> <owner>calamity@chromium.org</owner> <summary> |
