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

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: Rebase Created 4 years, 5 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 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 case ServiceWorkerMetrics::EventType::FETCH_SUB_FRAME: 60 case ServiceWorkerMetrics::EventType::FETCH_SUB_FRAME:
61 return "_FETCH_SUB_FRAME"; 61 return "_FETCH_SUB_FRAME";
62 case ServiceWorkerMetrics::EventType::FETCH_SHARED_WORKER: 62 case ServiceWorkerMetrics::EventType::FETCH_SHARED_WORKER:
63 return "_FETCH_SHARED_WORKER"; 63 return "_FETCH_SHARED_WORKER";
64 case ServiceWorkerMetrics::EventType::FETCH_SUB_RESOURCE: 64 case ServiceWorkerMetrics::EventType::FETCH_SUB_RESOURCE:
65 return "_FETCH_SUB_RESOURCE"; 65 return "_FETCH_SUB_RESOURCE";
66 case ServiceWorkerMetrics::EventType::UNKNOWN: 66 case ServiceWorkerMetrics::EventType::UNKNOWN:
67 return "_UNKNOWN"; 67 return "_UNKNOWN";
68 case ServiceWorkerMetrics::EventType::FOREIGN_FETCH: 68 case ServiceWorkerMetrics::EventType::FOREIGN_FETCH:
69 return "_FOREIGN_FETCH"; 69 return "_FOREIGN_FETCH";
70 case ServiceWorkerMetrics::EventType::FETCH_WAITUNTIL:
71 return "_FETCH_WAITUNTIL";
72 case ServiceWorkerMetrics::EventType::FOREIGN_FETCH_WAITUNTIL:
73 return "_FOREIGN_FETCH_WAITUNTIL";
70 case ServiceWorkerMetrics::EventType::NUM_TYPES: 74 case ServiceWorkerMetrics::EventType::NUM_TYPES:
71 NOTREACHED() << static_cast<int>(event_type); 75 NOTREACHED() << static_cast<int>(event_type);
72 } 76 }
73 return "_UNKNOWN"; 77 return "_UNKNOWN";
74 } 78 }
75 79
76 std::string GetWorkerPreparationSuffix( 80 std::string GetWorkerPreparationSuffix(
77 EmbeddedWorkerStatus initial_worker_status, 81 EmbeddedWorkerStatus initial_worker_status,
78 ServiceWorkerMetrics::StartSituation start_situation) { 82 ServiceWorkerMetrics::StartSituation start_situation) {
79 switch (initial_worker_status) { 83 switch (initial_worker_status) {
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
179 case EventType::FETCH_SUB_FRAME: 183 case EventType::FETCH_SUB_FRAME:
180 return "Fetch Sub Frame"; 184 return "Fetch Sub Frame";
181 case EventType::FETCH_SHARED_WORKER: 185 case EventType::FETCH_SHARED_WORKER:
182 return "Fetch Shared Worker"; 186 return "Fetch Shared Worker";
183 case EventType::FETCH_SUB_RESOURCE: 187 case EventType::FETCH_SUB_RESOURCE:
184 return "Fetch Subresource"; 188 return "Fetch Subresource";
185 case EventType::UNKNOWN: 189 case EventType::UNKNOWN:
186 return "Unknown"; 190 return "Unknown";
187 case EventType::FOREIGN_FETCH: 191 case EventType::FOREIGN_FETCH:
188 return "Foreign Fetch"; 192 return "Foreign Fetch";
193 case EventType::FETCH_WAITUNTIL:
194 return "Fetch WaitUntil";
195 case EventType::FOREIGN_FETCH_WAITUNTIL:
196 return "Foreign Fetch WaitUntil";
189 case EventType::NUM_TYPES: 197 case EventType::NUM_TYPES:
190 break; 198 break;
191 } 199 }
192 NOTREACHED() << "Got unexpected event type: " << static_cast<int>(event_type); 200 NOTREACHED() << "Got unexpected event type: " << static_cast<int>(event_type);
193 return "error"; 201 return "error";
194 } 202 }
195 203
196 bool ServiceWorkerMetrics::ShouldExcludeSiteFromHistogram(Site site) { 204 bool ServiceWorkerMetrics::ShouldExcludeSiteFromHistogram(Site site) {
197 return site == ServiceWorkerMetrics::Site::NEW_TAB_PAGE; 205 return site == ServiceWorkerMetrics::Site::NEW_TAB_PAGE;
198 } 206 }
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
410 case EventType::FETCH_SHARED_WORKER: 418 case EventType::FETCH_SHARED_WORKER:
411 case EventType::FETCH_SUB_RESOURCE: 419 case EventType::FETCH_SUB_RESOURCE:
412 if (was_handled) { 420 if (was_handled) {
413 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.FetchEvent.HasResponse.Time", 421 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.FetchEvent.HasResponse.Time",
414 time); 422 time);
415 } else { 423 } else {
416 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.FetchEvent.Fallback.Time", 424 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.FetchEvent.Fallback.Time",
417 time); 425 time);
418 } 426 }
419 break; 427 break;
428 case EventType::FETCH_WAITUNTIL:
429 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.FetchEvent.WaitUntil.Time",
430 time);
431 break;
420 case EventType::FOREIGN_FETCH: 432 case EventType::FOREIGN_FETCH:
421 if (was_handled) { 433 if (was_handled) {
422 UMA_HISTOGRAM_MEDIUM_TIMES( 434 UMA_HISTOGRAM_MEDIUM_TIMES(
423 "ServiceWorker.ForeignFetchEvent.HasResponse.Time", time); 435 "ServiceWorker.ForeignFetchEvent.HasResponse.Time", time);
424 } else { 436 } else {
425 UMA_HISTOGRAM_MEDIUM_TIMES( 437 UMA_HISTOGRAM_MEDIUM_TIMES(
426 "ServiceWorker.ForeignFetchEvent.Fallback.Time", time); 438 "ServiceWorker.ForeignFetchEvent.Fallback.Time", time);
427 } 439 }
428 break; 440 break;
441 case EventType::FOREIGN_FETCH_WAITUNTIL:
442 UMA_HISTOGRAM_MEDIUM_TIMES(
443 "ServiceWorker.ForeignFetchEvent.WaitUntil.Time", time);
444 break;
429 case EventType::SYNC: 445 case EventType::SYNC:
430 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.BackgroundSyncEvent.Time", 446 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.BackgroundSyncEvent.Time",
431 time); 447 time);
432 break; 448 break;
433 case EventType::NOTIFICATION_CLICK: 449 case EventType::NOTIFICATION_CLICK:
434 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.NotificationClickEvent.Time", 450 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.NotificationClickEvent.Time",
435 time); 451 time);
436 break; 452 break;
437 case EventType::NOTIFICATION_CLOSE: 453 case EventType::NOTIFICATION_CLOSE:
438 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.NotificationCloseEvent.Time", 454 UMA_HISTOGRAM_MEDIUM_TIMES("ServiceWorker.NotificationCloseEvent.Time",
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
609 } else if (failure_count == 2) { 625 } else if (failure_count == 2) {
610 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.AfterFailureStreak_2", 626 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.AfterFailureStreak_2",
611 status, SERVICE_WORKER_ERROR_MAX_VALUE); 627 status, SERVICE_WORKER_ERROR_MAX_VALUE);
612 } else if (failure_count == 3) { 628 } else if (failure_count == 3) {
613 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.AfterFailureStreak_3", 629 UMA_HISTOGRAM_ENUMERATION("ServiceWorker.StartWorker.AfterFailureStreak_3",
614 status, SERVICE_WORKER_ERROR_MAX_VALUE); 630 status, SERVICE_WORKER_ERROR_MAX_VALUE);
615 } 631 }
616 } 632 }
617 633
618 } // namespace content 634 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/service_worker/service_worker_metrics.h ('k') | content/browser/service_worker/service_worker_register_job.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698