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

Side by Side Diff: chrome/browser/media/router/media_router_metrics.cc

Issue 2916163002: [MediaRouter] Record DIAL device counts in DialMediaSinkServiceImpl (Closed)
Patch Set: resolve code review comments from isherman Created 3 years, 6 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
1 // Copyright 2015 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/media/router/media_router_metrics.h" 5 #include "chrome/browser/media/router/media_router_metrics.h"
6 6
7 #include "base/macros.h" 7 #include "base/macros.h"
8 #include "base/metrics/histogram_macros.h" 8 #include "base/metrics/histogram_macros.h"
9 #include "base/time/default_clock.h"
10
11 namespace {
12 // How long to wait between device counts metrics are recorded. Set to 1 hour.
13 const int kDeviceCountMetricThresholdMins = 60;
14 } // namespace
9 15
10 namespace media_router { 16 namespace media_router {
11 17
18 MediaRouterMetrics::MediaRouterMetrics() : clock_(new base::DefaultClock()) {}
19 MediaRouterMetrics::~MediaRouterMetrics() = default;
20
12 // static 21 // static
22 const char MediaRouterMetrics::kHistogramDialAvailableDeviceCount[] =
23 "MediaRouter.Dial.AvailableDevicesCount";
24 const char MediaRouterMetrics::kHistogramDialKnownDeviceCount[] =
25 "MediaRouter.Dial.KnownDevicesCount";
13 const char MediaRouterMetrics::kHistogramIconClickLocation[] = 26 const char MediaRouterMetrics::kHistogramIconClickLocation[] =
14 "MediaRouter.Icon.Click.Location"; 27 "MediaRouter.Icon.Click.Location";
15 const char MediaRouterMetrics::kHistogramUiDialogPaint[] = 28 const char MediaRouterMetrics::kHistogramUiDialogPaint[] =
16 "MediaRouter.Ui.Dialog.Paint"; 29 "MediaRouter.Ui.Dialog.Paint";
17 const char MediaRouterMetrics::kHistogramUiDialogLoadedWithData[] = 30 const char MediaRouterMetrics::kHistogramUiDialogLoadedWithData[] =
18 "MediaRouter.Ui.Dialog.LoadedWithData"; 31 "MediaRouter.Ui.Dialog.LoadedWithData";
19 const char MediaRouterMetrics::kHistogramUiFirstAction[] = 32 const char MediaRouterMetrics::kHistogramUiFirstAction[] =
20 "MediaRouter.Ui.FirstAction"; 33 "MediaRouter.Ui.FirstAction";
21 const char MediaRouterMetrics::kHistogramRouteCreationOutcome[] = 34 const char MediaRouterMetrics::kHistogramRouteCreationOutcome[] =
22 "MediaRouter.Route.CreationOutcome"; 35 "MediaRouter.Route.CreationOutcome";
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 // static 69 // static
57 void MediaRouterMetrics::RecordRouteCreationOutcome( 70 void MediaRouterMetrics::RecordRouteCreationOutcome(
58 MediaRouterRouteCreationOutcome outcome) { 71 MediaRouterRouteCreationOutcome outcome) {
59 DCHECK_LT(static_cast<int>(outcome), 72 DCHECK_LT(static_cast<int>(outcome),
60 static_cast<int>(MediaRouterRouteCreationOutcome::TOTAL_COUNT)); 73 static_cast<int>(MediaRouterRouteCreationOutcome::TOTAL_COUNT));
61 UMA_HISTOGRAM_ENUMERATION( 74 UMA_HISTOGRAM_ENUMERATION(
62 kHistogramRouteCreationOutcome, static_cast<int>(outcome), 75 kHistogramRouteCreationOutcome, static_cast<int>(outcome),
63 static_cast<int>(MediaRouterRouteCreationOutcome::TOTAL_COUNT)); 76 static_cast<int>(MediaRouterRouteCreationOutcome::TOTAL_COUNT));
64 } 77 }
65 78
79 void MediaRouterMetrics::RecordDialDeviceCounts(size_t available_device_count,
80 size_t known_device_count) {
81 if (clock_->Now() - device_count_metrics_record_time_ <
82 base::TimeDelta::FromMinutes(kDeviceCountMetricThresholdMins)) {
83 return;
84 }
85 UMA_HISTOGRAM_COUNTS_100(kHistogramDialAvailableDeviceCount,
86 available_device_count);
87 UMA_HISTOGRAM_COUNTS_100(kHistogramDialKnownDeviceCount, known_device_count);
88 device_count_metrics_record_time_ = clock_->Now();
89 }
90
91 void MediaRouterMetrics::SetClockForTest(std::unique_ptr<base::Clock> clock) {
92 clock_ = std::move(clock);
93 }
94
66 } // namespace media_router 95 } // namespace media_router
OLDNEW
« no previous file with comments | « chrome/browser/media/router/media_router_metrics.h ('k') | chrome/browser/media/router/media_router_metrics_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698