OLD | NEW |
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/page_load_metrics/observers/core_page_load_metrics_obse
rver.h" | 5 #include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_obse
rver.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 #include <utility> | 9 #include <utility> |
10 | 10 |
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
215 | 215 |
216 const char kHistogramFirstNonScrollInputAfterFirstPaint[] = | 216 const char kHistogramFirstNonScrollInputAfterFirstPaint[] = |
217 "PageLoad.InputTiming.NavigationToFirstNonScroll.AfterPaint"; | 217 "PageLoad.InputTiming.NavigationToFirstNonScroll.AfterPaint"; |
218 const char kHistogramFirstScrollInputAfterFirstPaint[] = | 218 const char kHistogramFirstScrollInputAfterFirstPaint[] = |
219 "PageLoad.InputTiming.NavigationToFirstScroll.AfterPaint"; | 219 "PageLoad.InputTiming.NavigationToFirstScroll.AfterPaint"; |
220 | 220 |
221 const char kHistogramTotalBytes[] = "PageLoad.Experimental.Bytes.Total"; | 221 const char kHistogramTotalBytes[] = "PageLoad.Experimental.Bytes.Total"; |
222 const char kHistogramNetworkBytes[] = "PageLoad.Experimental.Bytes.Network"; | 222 const char kHistogramNetworkBytes[] = "PageLoad.Experimental.Bytes.Network"; |
223 const char kHistogramCacheBytes[] = "PageLoad.Experimental.Bytes.Cache"; | 223 const char kHistogramCacheBytes[] = "PageLoad.Experimental.Bytes.Cache"; |
224 | 224 |
| 225 const char kHistogramLoadTypeTotalBytesForwardBack[] = |
| 226 "PageLoad.Experimental.Bytes.Total.LoadType.ForwardBackNavigation"; |
| 227 const char kHistogramLoadTypeNetworkBytesForwardBack[] = |
| 228 "PageLoad.Experimental.Bytes.Network.LoadType.ForwardBackNavigation"; |
| 229 const char kHistogramLoadTypeCacheBytesForwardBack[] = |
| 230 "PageLoad.Experimental.Bytes.Cache.LoadType.ForwardBackNavigation"; |
| 231 |
| 232 const char kHistogramLoadTypeTotalBytesReload[] = |
| 233 "PageLoad.Experimental.Bytes.Total.LoadType.Reload"; |
| 234 const char kHistogramLoadTypeNetworkBytesReload[] = |
| 235 "PageLoad.Experimental.Bytes.Network.LoadType.Reload"; |
| 236 const char kHistogramLoadTypeCacheBytesReload[] = |
| 237 "PageLoad.Experimental.Bytes.Cache.LoadType.Reload"; |
| 238 |
| 239 const char kHistogramLoadTypeTotalBytesNewNavigation[] = |
| 240 "PageLoad.Experimental.Bytes.Total.LoadType.NewNavigation"; |
| 241 const char kHistogramLoadTypeNetworkBytesNewNavigation[] = |
| 242 "PageLoad.Experimental.Bytes.Network.LoadType.NewNavigation"; |
| 243 const char kHistogramLoadTypeCacheBytesNewNavigation[] = |
| 244 "PageLoad.Experimental.Bytes.Cache.LoadType.NewNavigation"; |
| 245 |
225 const char kHistogramTotalCompletedResources[] = | 246 const char kHistogramTotalCompletedResources[] = |
226 "PageLoad.Experimental.CompletedResources.Total"; | 247 "PageLoad.Experimental.CompletedResources.Total"; |
227 const char kHistogramNetworkCompletedResources[] = | 248 const char kHistogramNetworkCompletedResources[] = |
228 "PageLoad.Experimental.CompletedResources.Network"; | 249 "PageLoad.Experimental.CompletedResources.Network"; |
229 const char kHistogramCacheCompletedResources[] = | 250 const char kHistogramCacheCompletedResources[] = |
230 "PageLoad.Experimental.CompletedResources.Cache"; | 251 "PageLoad.Experimental.CompletedResources.Cache"; |
231 | 252 |
232 } // namespace internal | 253 } // namespace internal |
233 | 254 |
234 CorePageLoadMetricsObserver::CorePageLoadMetricsObserver() | 255 CorePageLoadMetricsObserver::CorePageLoadMetricsObserver() |
(...skipping 486 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
721 const page_load_metrics::PageLoadTiming& timing, | 742 const page_load_metrics::PageLoadTiming& timing, |
722 const page_load_metrics::PageLoadExtraInfo& info) { | 743 const page_load_metrics::PageLoadExtraInfo& info) { |
723 DCHECK_GE(network_bytes_, 0); | 744 DCHECK_GE(network_bytes_, 0); |
724 DCHECK_GE(cache_bytes_, 0); | 745 DCHECK_GE(cache_bytes_, 0); |
725 int64_t total_bytes = network_bytes_ + cache_bytes_; | 746 int64_t total_bytes = network_bytes_ + cache_bytes_; |
726 | 747 |
727 PAGE_BYTES_HISTOGRAM(internal::kHistogramNetworkBytes, network_bytes_); | 748 PAGE_BYTES_HISTOGRAM(internal::kHistogramNetworkBytes, network_bytes_); |
728 PAGE_BYTES_HISTOGRAM(internal::kHistogramCacheBytes, cache_bytes_); | 749 PAGE_BYTES_HISTOGRAM(internal::kHistogramCacheBytes, cache_bytes_); |
729 PAGE_BYTES_HISTOGRAM(internal::kHistogramTotalBytes, total_bytes); | 750 PAGE_BYTES_HISTOGRAM(internal::kHistogramTotalBytes, total_bytes); |
730 | 751 |
| 752 switch (GetPageLoadType(transition_)) { |
| 753 case LOAD_TYPE_RELOAD: |
| 754 PAGE_BYTES_HISTOGRAM(internal::kHistogramLoadTypeNetworkBytesReload, |
| 755 network_bytes_); |
| 756 PAGE_BYTES_HISTOGRAM(internal::kHistogramLoadTypeCacheBytesReload, |
| 757 cache_bytes_); |
| 758 PAGE_BYTES_HISTOGRAM(internal::kHistogramLoadTypeTotalBytesReload, |
| 759 total_bytes); |
| 760 break; |
| 761 case LOAD_TYPE_FORWARD_BACK: |
| 762 PAGE_BYTES_HISTOGRAM(internal::kHistogramLoadTypeNetworkBytesForwardBack, |
| 763 network_bytes_); |
| 764 PAGE_BYTES_HISTOGRAM(internal::kHistogramLoadTypeCacheBytesForwardBack, |
| 765 cache_bytes_); |
| 766 PAGE_BYTES_HISTOGRAM(internal::kHistogramLoadTypeTotalBytesForwardBack, |
| 767 total_bytes); |
| 768 break; |
| 769 case LOAD_TYPE_NEW_NAVIGATION: |
| 770 PAGE_BYTES_HISTOGRAM( |
| 771 internal::kHistogramLoadTypeNetworkBytesNewNavigation, |
| 772 network_bytes_); |
| 773 PAGE_BYTES_HISTOGRAM(internal::kHistogramLoadTypeCacheBytesNewNavigation, |
| 774 cache_bytes_); |
| 775 PAGE_BYTES_HISTOGRAM(internal::kHistogramLoadTypeTotalBytesNewNavigation, |
| 776 total_bytes); |
| 777 break; |
| 778 case LOAD_TYPE_NONE: |
| 779 NOTREACHED(); |
| 780 break; |
| 781 } |
| 782 |
731 PAGE_RESOURCE_COUNT_HISTOGRAM(internal::kHistogramNetworkCompletedResources, | 783 PAGE_RESOURCE_COUNT_HISTOGRAM(internal::kHistogramNetworkCompletedResources, |
732 num_network_resources_); | 784 num_network_resources_); |
733 PAGE_RESOURCE_COUNT_HISTOGRAM(internal::kHistogramCacheCompletedResources, | 785 PAGE_RESOURCE_COUNT_HISTOGRAM(internal::kHistogramCacheCompletedResources, |
734 num_cache_resources_); | 786 num_cache_resources_); |
735 PAGE_RESOURCE_COUNT_HISTOGRAM(internal::kHistogramTotalCompletedResources, | 787 PAGE_RESOURCE_COUNT_HISTOGRAM(internal::kHistogramTotalCompletedResources, |
736 num_cache_resources_ + num_network_resources_); | 788 num_cache_resources_ + num_network_resources_); |
737 } | 789 } |
738 | 790 |
739 void CorePageLoadMetricsObserver::RecordRappor( | 791 void CorePageLoadMetricsObserver::RecordRappor( |
740 const page_load_metrics::PageLoadTiming& timing, | 792 const page_load_metrics::PageLoadTiming& timing, |
(...skipping 30 matching lines...) Expand all Loading... |
771 std::move(sample)); | 823 std::move(sample)); |
772 } | 824 } |
773 | 825 |
774 // Log the eTLD+1 of sites that did not report first meaningful paint. | 826 // Log the eTLD+1 of sites that did not report first meaningful paint. |
775 if (timing.first_paint && !timing.first_meaningful_paint) { | 827 if (timing.first_paint && !timing.first_meaningful_paint) { |
776 rappor::SampleDomainAndRegistryFromGURL( | 828 rappor::SampleDomainAndRegistryFromGURL( |
777 rappor_service, | 829 rappor_service, |
778 internal::kRapporMetricsNameFirstMeaningfulPaintNotRecorded, info.url); | 830 internal::kRapporMetricsNameFirstMeaningfulPaintNotRecorded, info.url); |
779 } | 831 } |
780 } | 832 } |
OLD | NEW |