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

Side by Side Diff: content/browser/service_worker/service_worker_metrics.cc

Issue 1178043002: Update ServiceWorker event handled status histogram (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "content/browser/service_worker/service_worker_metrics.h" 5 #include "content/browser/service_worker/service_worker_metrics.h"
6 6
7 #include "base/metrics/histogram_macros.h" 7 #include "base/metrics/histogram_macros.h"
8 #include "base/metrics/user_metrics_action.h" 8 #include "base/metrics/user_metrics_action.h"
9 #include "content/public/browser/browser_thread.h" 9 #include "content/public/browser/browser_thread.h"
10 #include "content/public/browser/content_browser_client.h" 10 #include "content/public/browser/content_browser_client.h"
11 #include "content/public/browser/user_metrics.h" 11 #include "content/public/browser/user_metrics.h"
12 #include "content/public/common/content_client.h" 12 #include "content/public/common/content_client.h"
13 13
14 namespace content { 14 namespace content {
15 15
16 namespace { 16 namespace {
17 17
18 void RecordURLMetricOnUI(const GURL& url) { 18 void RecordURLMetricOnUI(const GURL& url) {
19 DCHECK_CURRENTLY_ON(BrowserThread::UI); 19 DCHECK_CURRENTLY_ON(BrowserThread::UI);
20 GetContentClient()->browser()->RecordURLMetric( 20 GetContentClient()->browser()->RecordURLMetric(
21 "ServiceWorker.ControlledPageUrl", url); 21 "ServiceWorker.ControlledPageUrl", url);
22 } 22 }
23 23
24 enum EventHandledStatus {
25 EVENT_HANDLED,
26 EVENT_NOT_HANDLED,
27 EVENT_HANDLED_STATUS_MAX,
28 };
29
30 enum PerWorkerEventHandledStatus {
31 NO_EVENTS_HANDLED,
32 SOME_EVENTS_HANDLED,
33 ALL_EVENTS_HANDLED,
34 PER_WORKER_EVENT_HANDLED_STATUS_MAX,
35 };
36
24 } // namespace 37 } // namespace
25 38
26 void ServiceWorkerMetrics::CountInitDiskCacheResult(bool result) { 39 void ServiceWorkerMetrics::CountInitDiskCacheResult(bool result) {
27 UMA_HISTOGRAM_BOOLEAN("ServiceWorker.DiskCache.InitResult", result); 40 UMA_HISTOGRAM_BOOLEAN("ServiceWorker.DiskCache.InitResult", result);
28 } 41 }
29 42
30 void ServiceWorkerMetrics::CountReadResponseResult( 43 void ServiceWorkerMetrics::CountReadResponseResult(
31 ServiceWorkerMetrics::ReadResponseResult result) { 44 ServiceWorkerMetrics::ReadResponseResult result) {
32 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.DiskCache.ReadResponseResult", 45 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.DiskCache.ReadResponseResult",
33 result, NUM_READ_RESPONSE_RESULT_TYPES); 46 result, NUM_READ_RESPONSE_RESULT_TYPES);
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.ActivateEventStatus", status, 113 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.ActivateEventStatus", status,
101 SERVICE_WORKER_ERROR_MAX_VALUE); 114 SERVICE_WORKER_ERROR_MAX_VALUE);
102 } 115 }
103 116
104 void ServiceWorkerMetrics::RecordInstallEventStatus( 117 void ServiceWorkerMetrics::RecordInstallEventStatus(
105 ServiceWorkerStatusCode status) { 118 ServiceWorkerStatusCode status) {
106 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.InstallEventStatus", status, 119 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.InstallEventStatus", status,
107 SERVICE_WORKER_ERROR_MAX_VALUE); 120 SERVICE_WORKER_ERROR_MAX_VALUE);
108 } 121 }
109 122
110 void ServiceWorkerMetrics::RecordEventStatus(size_t fired_events, 123 void ServiceWorkerMetrics::RecordPerWorkerEventHandledStatus(
111 size_t handled_events) { 124 size_t fired_events,
125 size_t handled_events) {
112 if (!fired_events) 126 if (!fired_events)
113 return; 127 return;
114 int unhandled_ratio = (fired_events - handled_events) * 100 / fired_events; 128 PerWorkerEventHandledStatus status = SOME_EVENTS_HANDLED;
115 UMA_HISTOGRAM_PERCENTAGE("ServiceWorker.UnhandledEventRatio", 129 if (fired_events == handled_events)
116 unhandled_ratio); 130 status = ALL_EVENTS_HANDLED;
131 else if (handled_events == 0)
132 status = NO_EVENTS_HANDLED;
133 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.EventHandledStatus_PerWorker",
134 status, PER_WORKER_EVENT_HANDLED_STATUS_MAX);
135 }
136
137 void ServiceWorkerMetrics::RecordEventHandledStatus(bool handled) {
138 if (handled) {
139 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.EventHandledStatus", EVENT_HANDLED,
140 EVENT_HANDLED_STATUS_MAX);
141 } else {
142 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.EventHandledStatus",
143 EVENT_NOT_HANDLED, EVENT_HANDLED_STATUS_MAX);
144 }
117 } 145 }
118 146
119 } // namespace content 147 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698