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

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

Issue 2034663002: ServiceWorker: Keep the worker alive until FetchEvent.waitUntil settles (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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 <limits> 7 #include <limits>
8 #include <string> 8 #include <string>
9 9
10 #include "base/metrics/histogram_macros.h" 10 #include "base/metrics/histogram_macros.h"
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
99 case EventType::FETCH_SUB_FRAME: 99 case EventType::FETCH_SUB_FRAME:
100 return "Fetch Sub Frame"; 100 return "Fetch Sub Frame";
101 case EventType::FETCH_SHARED_WORKER: 101 case EventType::FETCH_SHARED_WORKER:
102 return "Fetch Shared Worker"; 102 return "Fetch Shared Worker";
103 case EventType::FETCH_SUB_RESOURCE: 103 case EventType::FETCH_SUB_RESOURCE:
104 return "Fetch Subresource"; 104 return "Fetch Subresource";
105 case EventType::UNKNOWN: 105 case EventType::UNKNOWN:
106 return "Unknown"; 106 return "Unknown";
107 case EventType::FOREIGN_FETCH: 107 case EventType::FOREIGN_FETCH:
108 return "Foreign Fetch"; 108 return "Foreign Fetch";
109 case EventType::FETCH_WAITUNTIL:
110 return "Fetch WaitUntil";
109 case EventType::NUM_TYPES: 111 case EventType::NUM_TYPES:
110 break; 112 break;
111 } 113 }
112 NOTREACHED() << "Got unexpected event type: " << static_cast<int>(event_type); 114 NOTREACHED() << "Got unexpected event type: " << static_cast<int>(event_type);
113 return "error"; 115 return "error";
114 } 116 }
115 117
116 bool ServiceWorkerMetrics::ShouldExcludeSiteFromHistogram(Site site) { 118 bool ServiceWorkerMetrics::ShouldExcludeSiteFromHistogram(Site site) {
117 return site == ServiceWorkerMetrics::Site::NEW_TAB_PAGE; 119 return site == ServiceWorkerMetrics::Site::NEW_TAB_PAGE;
118 } 120 }
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
254 case EventType::UNKNOWN: 256 case EventType::UNKNOWN:
255 UMA_HISTOGRAM_ENUMERATION( 257 UMA_HISTOGRAM_ENUMERATION(
256 "ServiceWorker.StartWorker.StatusByPurpose_UNKNOWN", status, 258 "ServiceWorker.StartWorker.StatusByPurpose_UNKNOWN", status,
257 SERVICE_WORKER_ERROR_MAX_VALUE); 259 SERVICE_WORKER_ERROR_MAX_VALUE);
258 break; 260 break;
259 case EventType::FOREIGN_FETCH: 261 case EventType::FOREIGN_FETCH:
260 UMA_HISTOGRAM_ENUMERATION( 262 UMA_HISTOGRAM_ENUMERATION(
261 "ServiceWorker.StartWorker.StatusByPurpose_FOREIGN_FETCH", status, 263 "ServiceWorker.StartWorker.StatusByPurpose_FOREIGN_FETCH", status,
262 SERVICE_WORKER_ERROR_MAX_VALUE); 264 SERVICE_WORKER_ERROR_MAX_VALUE);
263 break; 265 break;
266 case EventType::FETCH_WAITUNTIL:
267 UMA_HISTOGRAM_ENUMERATION(
268 "ServiceWorker.StartWorker.StatusByPurpose_FETCH_WAITUNTIL", status,
269 SERVICE_WORKER_ERROR_MAX_VALUE);
270 break;
264 case EventType::NUM_TYPES: 271 case EventType::NUM_TYPES:
265 NOTREACHED(); 272 NOTREACHED();
266 break; 273 break;
267 } 274 }
268 275
269 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.Purpose", 276 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.Purpose",
270 static_cast<int>(purpose), 277 static_cast<int>(purpose),
271 static_cast<int>(EventType::NUM_TYPES)); 278 static_cast<int>(EventType::NUM_TYPES));
272 if (status == SERVICE_WORKER_ERROR_TIMEOUT) { 279 if (status == SERVICE_WORKER_ERROR_TIMEOUT) {
273 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.Timeout.StartPurpose", 280 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.Timeout.StartPurpose",
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
364 case EventType::FETCH_SHARED_WORKER: 371 case EventType::FETCH_SHARED_WORKER:
365 case EventType::FETCH_SUB_RESOURCE: 372 case EventType::FETCH_SUB_RESOURCE:
366 if (was_handled) { 373 if (was_handled) {
367 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.FetchEvent.HasResponse.Time", 374 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.FetchEvent.HasResponse.Time",
368 time); 375 time);
369 } else { 376 } else {
370 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.FetchEvent.Fallback.Time", 377 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.FetchEvent.Fallback.Time",
371 time); 378 time);
372 } 379 }
373 break; 380 break;
381 case EventType::FETCH_WAITUNTIL:
382 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.FetchEvent.WaitUntil.Time",
383 time);
384 break;
374 case EventType::FOREIGN_FETCH: 385 case EventType::FOREIGN_FETCH:
375 if (was_handled) { 386 if (was_handled) {
376 UMA_HISTOGRAM_MEDIUM_TIMES( 387 UMA_HISTOGRAM_MEDIUM_TIMES(
377 "ServiceWorker.ForeignFetchEvent.HasResponse.Time", time); 388 "ServiceWorker.ForeignFetchEvent.HasResponse.Time", time);
378 } else { 389 } else {
379 UMA_HISTOGRAM_MEDIUM_TIMES( 390 UMA_HISTOGRAM_MEDIUM_TIMES(
380 "ServiceWorker.ForeignFetchEvent.Fallback.Time", time); 391 "ServiceWorker.ForeignFetchEvent.Fallback.Time", time);
381 } 392 }
382 break; 393 break;
383 case EventType::SYNC: 394 case EventType::SYNC:
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
563 } else if (failure_count == 2) { 574 } else if (failure_count == 2) {
564 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.AfterFailureStreak_2", 575 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.AfterFailureStreak_2",
565 status, SERVICE_WORKER_ERROR_MAX_VALUE); 576 status, SERVICE_WORKER_ERROR_MAX_VALUE);
566 } else if (failure_count == 3) { 577 } else if (failure_count == 3) {
567 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.AfterFailureStreak_3", 578 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.AfterFailureStreak_3",
568 status, SERVICE_WORKER_ERROR_MAX_VALUE); 579 status, SERVICE_WORKER_ERROR_MAX_VALUE);
569 } 580 }
570 } 581 }
571 582
572 } // namespace content 583 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698