Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(187)

Side by Side Diff: chrome/browser/engagement/site_engagement_metrics.cc

Issue 1368533004: Add UMA metrics to the site engagement service. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@time-on-site
Patch Set: Adding tests, addressing reviewer feedback Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/engagement/site_engagement_metrics.h"
6
7 #include "base/metrics/histogram_macros.h"
8 #include "base/metrics/sparse_histogram.h"
9
10 const char SiteEngagementMetrics::kTotalEngagementHistogram[] =
11 "SiteEngagementService.TotalEngagement";
12
13 const char SiteEngagementMetrics::kTotalOriginsHistogram[] =
14 "SiteEngagementService.OriginsEngaged";
15
16 const char SiteEngagementMetrics::kEngagementScoreHistogram[] =
17 "SiteEngagementService.EngagementScore";
18
19 const char SiteEngagementMetrics::kOriginsWithMaxEngagementHistogram[] =
20 "SiteEngagementService.OriginsWithMaxEngagement";
21
22 const char SiteEngagementMetrics::kOriginsWithMaxDailyEngagementHistogram[] =
23 "SiteEngagementService.OriginsWithMaxDailyEngagement";
24
25 const char SiteEngagementMetrics::kEngagementTypeHistogram[] =
26 "SiteEngagementService.EngagementType";
27
28 void SiteEngagementMetrics::RecordTotalSiteEngagement(
29 double total_engagement) {
30 UMA_HISTOGRAM_COUNTS_10000(kTotalEngagementHistogram, total_engagement);
31 }
32
33 void SiteEngagementMetrics::RecordTotalOriginsEngaged(int num_origins) {
34 UMA_HISTOGRAM_COUNTS_10000(kTotalOriginsHistogram, num_origins);
35 }
36
37 void SiteEngagementMetrics::RecordEngagementScore(
38 std::map<GURL, double> score_map) {
39 for (const auto& value: score_map) {
40 UMA_HISTOGRAM_COUNTS_100(kEngagementScoreHistogram, value.second);
41 }
42 }
43
44 void SiteEngagementMetrics::RecordOriginsWithMaxEngagement(int total_origins) {
45 UMA_HISTOGRAM_COUNTS_100(kOriginsWithMaxEngagementHistogram, total_origins);
46 }
47
48 void SiteEngagementMetrics::RecordOriginsWithMaxDailyEngagement(
49 int total_origins) {
50 UMA_HISTOGRAM_COUNTS_100(kOriginsWithMaxDailyEngagementHistogram,
51 total_origins);
52 }
53
54 void SiteEngagementMetrics::RecordEngagement(EngagementType type) {
55 switch (type) {
56 case ENGAGEMENT_NAVIGATION:
57 UMA_HISTOGRAM_SPARSE_SLOWLY(kEngagementTypeHistogram,
benwells 2015/09/30 00:10:54 Reading https://groups.google.com/a/chromium.org/f
Ilya Sherman 2015/10/01 07:08:17 It's fine either way, but yeah, UMA_HISTOGRAM_ENUM
dominickn 2015/10/01 08:19:44 Done.
58 ENGAGEMENT_NAVIGATION);
59 break;
60 case ENGAGEMENT_KEYPRESS:
61 UMA_HISTOGRAM_SPARSE_SLOWLY(kEngagementTypeHistogram,
62 ENGAGEMENT_KEYPRESS);
63 break;
64 case ENGAGEMENT_MOUSE:
65 UMA_HISTOGRAM_SPARSE_SLOWLY(kEngagementTypeHistogram, ENGAGEMENT_MOUSE);
Ilya Sherman 2015/10/01 07:08:17 nit: Please move the UMA_HISTOGRAM_ macro out of t
dominickn 2015/10/01 08:19:44 Done.
66 break;
67 default:
Ilya Sherman 2015/10/01 07:08:17 nit: Please remove the default case: the compiler
dominickn 2015/10/01 08:19:44 Done.
68 NOTREACHED() << "Invalid type passed to RecordUserInput().";
69 break;
70 }
71 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698