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

Issue 1871393002: Add NavigationToFirstContentfulPaint UMA for ServiceWorker controlled pages. (Closed)

Created:
4 years, 8 months ago by horo
Modified:
4 years, 7 months ago
CC:
blink-reviews, blink-reviews-api_chromium.org, chromium-reviews, csharrison+watch_chromium.org, dglazkov+blink, loading-reviews+metrics_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add NavigationToFirstContentfulPaint UMA for ServiceWorker controlled pages. Currently we don't have PageLoad UMAs for Service Worker controlled pages. We will do some experiments which may affect the performance of Service Worker controlled pages. This change will add PageLoad.Clients.ServiceWorker.Timing2.NavigationToFirstContentfulPaint BUG=581613 Committed: https://crrev.com/e3107a132dcd87e9310627ccb3ea15fea8bd16a1 Cr-Commit-Position: refs/heads/master@{#390001}

Patch Set 1 #

Total comments: 2

Patch Set 2 : incorporated ksakamoto's comment #

Total comments: 2

Patch Set 3 : diff from https://codereview.chromium.org/1857443002/#ps110001 #

Total comments: 4

Patch Set 4 : Add comment and check ShouldSendMetrics() #

Total comments: 2

Patch Set 5 : Check page_timing_metrics_sender_ #

Total comments: 10

Patch Set 6 : incorporated bmcquade's comment #

Total comments: 4

Patch Set 7 : incorporated bmcquade's comment #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+71 lines, -14 lines) Patch
A + chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.h View 1 2 3 4 5 1 chunk +7 lines, -14 lines 0 comments Download
A chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc View 1 2 3 4 5 6 1 chunk +47 lines, -0 lines 0 comments Download
M chrome/browser/page_load_metrics/page_load_metrics_initialize.cc View 1 2 3 4 5 6 2 chunks +3 lines, -0 lines 0 comments Download
M chrome/chrome_browser.gypi View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/loader/FrameLoader.cpp View 1 2 3 4 5 6 1 chunk +4 lines, -0 lines 3 comments Download
M third_party/WebKit/public/platform/WebLoadingBehaviorFlag.h View 1 2 3 4 5 1 chunk +3 lines, -0 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 5 6 2 chunks +5 lines, -0 lines 0 comments Download

Messages

Total messages: 62 (27 generated)
horo
ksakamoto@ Could you please review this?
4 years, 8 months ago (2016-04-12 07:48:05 UTC) #11
Kunihiko Sakamoto
+csharrison, bmcquade I'm not sure if it's OK to add this metric to CorePageLoadMetricsObserver, or ...
4 years, 8 months ago (2016-04-12 08:23:12 UTC) #13
horo
Thank you! https://codereview.chromium.org/1871393002/diff/80001/third_party/WebKit/Source/core/timing/PerformanceTiming.h File third_party/WebKit/Source/core/timing/PerformanceTiming.h (right): https://codereview.chromium.org/1871393002/diff/80001/third_party/WebKit/Source/core/timing/PerformanceTiming.h#newcode63 third_party/WebKit/Source/core/timing/PerformanceTiming.h:63: unsigned long long workerStart() const; On 2016/04/12 ...
4 years, 8 months ago (2016-04-12 10:09:56 UTC) #16
Bryan McQuade
Thanks! This seems like an important addition to our metrics. Given that you are really ...
4 years, 8 months ago (2016-04-12 20:29:10 UTC) #17
horo
+kinuko, csharrison Using WebLoadingBehaviorFlag seems good for my purpose I uploaded patch set 3 which ...
4 years, 8 months ago (2016-04-13 07:42:51 UTC) #20
kinuko
Yeah, using WebLoadingBehaviorFlag here sgtm, and having UMA for SW controlled page looks great. https://codereview.chromium.org/1871393002/diff/150001/third_party/WebKit/public/platform/WebLoadingBehaviorFlag.h ...
4 years, 8 months ago (2016-04-13 08:39:28 UTC) #21
Charlie Harrison
Nice change! https://codereview.chromium.org/1871393002/diff/150001/components/page_load_metrics/renderer/metrics_render_frame_observer.cc File components/page_load_metrics/renderer/metrics_render_frame_observer.cc (right): https://codereview.chromium.org/1871393002/diff/150001/components/page_load_metrics/renderer/metrics_render_frame_observer.cc#newcode44 components/page_load_metrics/renderer/metrics_render_frame_observer.cc:44: if (page_timing_metrics_sender_) This worries me slightly. We ...
4 years, 8 months ago (2016-04-13 12:59:13 UTC) #22
horo
https://codereview.chromium.org/1871393002/diff/150001/components/page_load_metrics/renderer/metrics_render_frame_observer.cc File components/page_load_metrics/renderer/metrics_render_frame_observer.cc (right): https://codereview.chromium.org/1871393002/diff/150001/components/page_load_metrics/renderer/metrics_render_frame_observer.cc#newcode44 components/page_load_metrics/renderer/metrics_render_frame_observer.cc:44: if (page_timing_metrics_sender_) On 2016/04/13 12:59:13, csharrison wrote: > This ...
4 years, 8 months ago (2016-04-14 02:19:14 UTC) #23
Charlie Harrison
https://codereview.chromium.org/1871393002/diff/170001/components/page_load_metrics/renderer/metrics_render_frame_observer.cc File components/page_load_metrics/renderer/metrics_render_frame_observer.cc (right): https://codereview.chromium.org/1871393002/diff/170001/components/page_load_metrics/renderer/metrics_render_frame_observer.cc#newcode44 components/page_load_metrics/renderer/metrics_render_frame_observer.cc:44: if (!ShouldSendMetrics()) Actually, I think I retract my comment. ...
4 years, 8 months ago (2016-04-14 13:29:57 UTC) #24
horo
https://codereview.chromium.org/1871393002/diff/170001/components/page_load_metrics/renderer/metrics_render_frame_observer.cc File components/page_load_metrics/renderer/metrics_render_frame_observer.cc (right): https://codereview.chromium.org/1871393002/diff/170001/components/page_load_metrics/renderer/metrics_render_frame_observer.cc#newcode44 components/page_load_metrics/renderer/metrics_render_frame_observer.cc:44: if (!ShouldSendMetrics()) On 2016/04/14 13:29:56, csharrison wrote: > Actually, ...
4 years, 8 months ago (2016-04-14 14:01:30 UTC) #25
Bryan McQuade
nice change! https://codereview.chromium.org/1871393002/diff/190001/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc File chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc (right): https://codereview.chromium.org/1871393002/diff/190001/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc#newcode29 chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc:29: LogDocumentWriteEvaluatorData(timing, info); rename to LogServiceWorkerHistograms https://codereview.chromium.org/1871393002/diff/190001/chrome/chrome_browser.gypi File ...
4 years, 8 months ago (2016-04-14 15:10:26 UTC) #26
horo
Thank you. https://codereview.chromium.org/1871393002/diff/190001/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc File chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc (right): https://codereview.chromium.org/1871393002/diff/190001/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc#newcode29 chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc:29: LogDocumentWriteEvaluatorData(timing, info); On 2016/04/14 15:10:26, Bryan McQuade ...
4 years, 8 months ago (2016-04-14 15:46:32 UTC) #27
horo
Ping?
4 years, 8 months ago (2016-04-19 08:38:13 UTC) #28
Charlie Harrison
Looks good. https://codereview.chromium.org/1871393002/diff/210001/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc File chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc (right): https://codereview.chromium.org/1871393002/diff/210001/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc#newcode5 chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc:5: #include "chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.h" nit: Add a linebreak here. ...
4 years, 8 months ago (2016-04-19 13:33:38 UTC) #29
horo
https://codereview.chromium.org/1871393002/diff/210001/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc File chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc (right): https://codereview.chromium.org/1871393002/diff/210001/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc#newcode5 chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc:5: #include "chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.h" On 2016/04/19 13:33:38, csharrison wrote: > nit: ...
4 years, 8 months ago (2016-04-19 15:04:15 UTC) #30
horo
Ping?
4 years, 8 months ago (2016-04-25 01:51:42 UTC) #31
Charlie Harrison
page_load_metrics lgtm, thanks for adding this.
4 years, 8 months ago (2016-04-25 01:56:38 UTC) #32
horo
japhet@ Could you please review third_party/WebKit/Source/core/loader/FrameLoader.cpp and third_party/WebKit/public/platform/WebLoadingBehaviorFlag.h? isherman@ Could you please review tools/metrics/histograms/histograms.xml?
4 years, 8 months ago (2016-04-25 02:14:30 UTC) #34
Ilya Sherman
histograms lgtm
4 years, 8 months ago (2016-04-25 02:37:52 UTC) #35
kinuko
WebKit changes lgtm (unless Nate disagrees)
4 years, 8 months ago (2016-04-26 13:14:12 UTC) #36
kinuko
https://codereview.chromium.org/1871393002/diff/230001/third_party/WebKit/Source/core/loader/FrameLoader.cpp File third_party/WebKit/Source/core/loader/FrameLoader.cpp (right): https://codereview.chromium.org/1871393002/diff/230001/third_party/WebKit/Source/core/loader/FrameLoader.cpp#newcode432 third_party/WebKit/Source/core/loader/FrameLoader.cpp:432: // didObserveLoadingBehavior() must be called after dispatchDidCommitLoad() is called ...
4 years, 8 months ago (2016-04-26 13:15:43 UTC) #37
Nate Chapin
lgtm
4 years, 8 months ago (2016-04-26 17:28:11 UTC) #38
horo
Thank you! https://codereview.chromium.org/1871393002/diff/230001/third_party/WebKit/Source/core/loader/FrameLoader.cpp File third_party/WebKit/Source/core/loader/FrameLoader.cpp (right): https://codereview.chromium.org/1871393002/diff/230001/third_party/WebKit/Source/core/loader/FrameLoader.cpp#newcode432 third_party/WebKit/Source/core/loader/FrameLoader.cpp:432: // didObserveLoadingBehavior() must be called after dispatchDidCommitLoad() ...
4 years, 7 months ago (2016-04-27 02:30:15 UTC) #39
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1871393002/230001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1871393002/230001
4 years, 7 months ago (2016-04-27 02:30:43 UTC) #41
commit-bot: I haz the power
Try jobs failed on following builders: chromeos_daisy_chromium_compile_only_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_daisy_chromium_compile_only_ng/builds/128310) chromeos_x86-generic_chromium_compile_only_ng on tryserver.chromium.linux (JOB_FAILED, ...
4 years, 7 months ago (2016-04-27 02:36:30 UTC) #43
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1871393002/230001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1871393002/230001
4 years, 7 months ago (2016-04-27 03:52:13 UTC) #45
commit-bot: I haz the power
Try jobs failed on following builders: chromeos_x86-generic_chromium_compile_only_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_x86-generic_chromium_compile_only_ng/builds/128374)
4 years, 7 months ago (2016-04-27 04:05:28 UTC) #47
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1871393002/230001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1871393002/230001
4 years, 7 months ago (2016-04-27 04:42:19 UTC) #49
commit-bot: I haz the power
Try jobs failed on following builders: chromeos_x86-generic_chromium_compile_only_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_x86-generic_chromium_compile_only_ng/builds/128400)
4 years, 7 months ago (2016-04-27 04:51:39 UTC) #51
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1871393002/230001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1871393002/230001
4 years, 7 months ago (2016-04-27 05:14:13 UTC) #53
commit-bot: I haz the power
Try jobs failed on following builders: chromeos_amd64-generic_chromium_compile_only_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_amd64-generic_chromium_compile_only_ng/builds/128461)
4 years, 7 months ago (2016-04-27 05:26:02 UTC) #55
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1871393002/230001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1871393002/230001
4 years, 7 months ago (2016-04-27 05:57:07 UTC) #57
commit-bot: I haz the power
Committed patchset #7 (id:230001)
4 years, 7 months ago (2016-04-27 06:12:45 UTC) #59
commit-bot: I haz the power
Patchset 7 (id:??) landed as https://crrev.com/e3107a132dcd87e9310627ccb3ea15fea8bd16a1 Cr-Commit-Position: refs/heads/master@{#390001}
4 years, 7 months ago (2016-04-27 06:14:07 UTC) #61
kinuko
4 years, 7 months ago (2016-04-27 09:09:40 UTC) #62
Message was sent while issue was closed.
https://codereview.chromium.org/1871393002/diff/230001/third_party/WebKit/Sou...
File third_party/WebKit/Source/core/loader/FrameLoader.cpp (right):

https://codereview.chromium.org/1871393002/diff/230001/third_party/WebKit/Sou...
third_party/WebKit/Source/core/loader/FrameLoader.cpp:432: //
didObserveLoadingBehavior() must be called after dispatchDidCommitLoad() is
called for the metrics tracking logic to handle it properly.
On 2016/04/27 02:30:15, horo wrote:
> On 2016/04/26 13:15:43, kinuko wrote:
> > nit: could we / do we have assertion somewhere to make sure this?
> 
> DocumentLoader::didObserveLoadingBehavior() has "ASSERT(m_state >= Committed)"
> check.
> 
>
https://chromium.googlesource.com/chromium/src/+/b4d6bf98e54db861b8d9adc7642c...

I know, but we don't take the document loader path this case do we?

Powered by Google App Engine
This is Rietveld 408576698