New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 661702 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: May 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

add support for tracking child frames in page load metrics

Project Member Reported by bmcquade@chromium.org, Nov 2 2016

Issue description

The current page load metrics impl only tracks activity in the top level frame.

Some pages, such as AMP pages, are loaded via same-page navigations and rendered in child frames. To properly record metrics for these cases, we need to instrument painting etc for child frames.
 
Components: Speed>Metrics
Status: Assigned (was: Untriaged)
Project Member

Comment 3 by bugdroid1@chromium.org, May 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b

commit 9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b
Author: bmcquade <bmcquade@chromium.org>
Date: Mon May 15 11:46:07 2017

Report page load timing information for child frames.

This change clarifies that our PLMO::On*Paint callbacks are for the whole page,
and adds support for aggregating timing data across frames in PageLoadTracker.

The current behavior tracks paints across all frames, however this is due to a bug
( crbug.com/705315 ) and will be fixed soon.

PLMO implementers actually want to track paints across all frames in the page, so
this is desired behavior.

This change adds support for tracking paints across all frames so the current
behavior doesn't regress when 705315 is fixed.

BUG= 661702 

Review-Url: https://codereview.chromium.org/2859393002
Cr-Commit-Position: refs/heads/master@{#471725}

[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/metrics_web_contents_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/metrics_web_contents_observer_unittest.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/ads_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/amp_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/amp_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/android_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/android_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/css_scanning_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/css_scanning_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/delay_navigation_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/delay_navigation_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/no_state_prefetch_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/no_state_prefetch_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/omnibox_suggestion_used_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/omnibox_suggestion_used_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/prerender_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/prerender_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/previews_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/previews_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/protocol_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/protocol_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/subresource_filter_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/observers/subresource_filter_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/page_load_metrics_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/page_load_metrics_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/page_load_metrics_util.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/page_load_metrics_util.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/page_load_tracker.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/page_load_metrics/page_load_tracker.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/browser/prerender/prerender_browsertest.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/renderer/page_load_metrics/metrics_render_frame_observer.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/renderer/page_load_metrics/metrics_render_frame_observer.h
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/renderer/page_load_metrics/metrics_render_frame_observer_unittest.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/renderer/page_load_metrics/page_timing_metrics_sender.cc
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/renderer/page_load_metrics/page_timing_metrics_sender.h
[add] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/test/data/page_load_metrics/empty_iframe.html
[add] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/test/data/page_load_metrics/iframe.html
[add] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/test/data/page_load_metrics/iframes.html
[add] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/test/data/page_load_metrics/main_frame_with_iframe.html
[add] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/chrome/test/data/page_load_metrics/seamless-iframe.css
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/9f5f6b9548bc4cad0c64d3aa2b5b58ae8dad595b/tools/metrics/histograms/histograms.xml

Status: Fixed (was: Assigned)

Sign in to add a comment