commit | 44af1fd2b2c715df44b0d6a855c807e1ad2e7334 | [log] [tgz] |
---|---|---|
author | John Delaney <johnidel@chromium.org> | Thu Jun 27 16:31:37 2019 |
committer | Commit Bot <commit-bot@chromium.org> | Thu Jun 27 16:31:37 2019 |
tree | f181d9552573ba8fd6c380427a31965203bb9e85 | |
parent | fa47af29d246edaf7604bfd3cf6d6531e833348f [diff] |
Plumb resources serviced from memory cache to PLM Byte metrics in page load metrics should be indicative of all bytes loaded by the page. UMA shows that large numbers of resources (~45% of JS resources) come from the memory cache. To provide a better picture of everything loaded by the page, we should make memory cache resources visible to observers. This change plumbs information about resources loaded via the blink memory cache into PageLoadMetrics. This is done though the existing SendTiming mojo, and these resources are included in the existing OnResourceDataUseObserved callback for PageLoadMetrics observers. This was added to the existing interface so that an observer that wants to look at all bytes loaded on the page does not need to implement two separate interfaces. Because we modify the existing mojo, all existing observers need to be updated to either discard resources loaded by the memory cache, or need to have their relevant histograms versioned. Observers whose metrics are updated: - CorePageLoadMetricsObserver - TabRestorePageLoadMetricsObserver - MediaPageLoadMetricsObserver - UkmPageLoadMetricsObserver Observers whose metrics would be affected but are modified to ignore MemoryCache resources: - ResourceMetricsObserver - AdsPageLoadMetricsObserver - DataReductionProxyMetricsObserver Only the histograms versioned in this CL should change. For all histograms not versioned in this change, this should be a no-op. Bug: 968141 Change-Id: I67ed0977f8532616815ba0fbe6e1eb3f3b70e36f Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1633190 Commit-Queue: John Delaney <johnidel@chromium.org> Reviewed-by: Bryan McQuade <bmcquade@chromium.org> Reviewed-by: Charlie Harrison <csharrison@chromium.org> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Cr-Commit-Position: refs/heads/master@{#672925}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .