Chromium Code Reviews| Index: content/browser/service_worker/service_worker_metrics.cc |
| diff --git a/content/browser/service_worker/service_worker_metrics.cc b/content/browser/service_worker/service_worker_metrics.cc |
| index 310e76e3d8a69cf6821c14c13f66bb4ec0810e69..a1ccedf0d7afb686a025455ddb88abc1f2ae6949 100644 |
| --- a/content/browser/service_worker/service_worker_metrics.cc |
| +++ b/content/browser/service_worker/service_worker_metrics.cc |
| @@ -321,9 +321,12 @@ void ServiceWorkerMetrics::RecordDeleteAndStartOverResult( |
| result, NUM_DELETE_AND_START_OVER_RESULT_TYPES); |
| } |
| -void ServiceWorkerMetrics::CountControlledPageLoad(Site site, |
| - const GURL& url, |
| - bool is_main_frame_load) { |
| +void ServiceWorkerMetrics::CountControlledPageLoad( |
| + Site site, |
| + const GURL& url, |
| + bool is_main_frame_load, |
| + ui::PageTransition page_transition, |
| + size_t redirect_chain_length) { |
| DCHECK_NE(site, Site::OTHER); |
| UMA_HISTOGRAM_ENUMERATION("ServiceWorker.PageLoad", static_cast<int>(site), |
| static_cast<int>(Site::NUM_TYPES)); |
| @@ -332,9 +335,20 @@ void ServiceWorkerMetrics::CountControlledPageLoad(Site site, |
| static_cast<int>(site), |
| static_cast<int>(Site::NUM_TYPES)); |
| } |
| - |
| if (ShouldExcludeSiteFromHistogram(site)) |
| return; |
| + |
| + if (is_main_frame_load) { |
| + UMA_HISTOGRAM_ENUMERATION( |
| + "ServiceWorker.MainFramePageLoad.CoreTransition", |
| + static_cast<int>(ui::PageTransitionStripQualifier(page_transition)), |
| + static_cast<int>(ui::PAGE_TRANSITION_LAST_CORE)); |
|
falken
2016/12/06 01:25:14
should be LAST_CORE + 1?
horo
2016/12/06 01:44:51
Done.
|
| + // The max number of http redirects is 20. So the max number of the chain |
| + // length is 21. |
|
falken
2016/12/06 01:25:14
Could we make kMaxRedirects public and refer to it
horo
2016/12/06 01:44:51
Done.
|
| + UMA_HISTOGRAM_EXACT_LINEAR( |
| + "ServiceWorker.MainFramePageLoad.RedirectChainLength", |
| + redirect_chain_length, 21); |
| + } |
| BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, |
| base::Bind(&RecordURLMetricOnUI, url)); |
| } |