New issue
Advanced search Search tips

Issue 863305 link

Starred by 2 users

Issue metadata

Status: Started
Owner:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Feature

Blocking:
issue 803774



Sign in to add a comment

Implement metrics for Signed HTTP Exchange

Project Member Reported by kouhei@chromium.org, Jul 13

Issue description

Implement metrics to track its usage.

This is needed before Signed HTTP Exchange origin-trials.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Sep 6

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

commit 47d2905adb08605ed545d446bb04962569393f5f
Author: Kouhei Ueno <kouhei@chromium.org>
Date: Thu Sep 06 02:40:51 2018

SignedExchange: Add UseCounter for documents inside signed exchange

This CL adds a UseCounter that counts documents transferred as inner
response of a signed exchange.

In order to make this info available to Blink, this CL plumbs the
|is_signed_exchange_inner_response| flag from content/browser to blink.
- network::ResourceResponseInfo
- blink::WebURLResponse
- blink::ResourceResponse

Bug: 863305
Cq-Include-Trybots: luci.chromium.try:linux_mojo
Change-Id: I73e5e8e65c422c0882028d45a4443eb7d0d13d2a
Reviewed-on: https://chromium-review.googlesource.com/1205920
Commit-Queue: Kouhei Ueno <kouhei@chromium.org>
Reviewed-by: Yutaka Hirano <yhirano@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Kunihiko Sakamoto <ksakamoto@chromium.org>
Cr-Commit-Position: refs/heads/master@{#589091}
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/content/browser/web_package/signed_exchange_handler.cc
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/content/browser/web_package/signed_exchange_loader.cc
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/content/renderer/loader/web_url_loader_impl.cc
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/services/network/public/cpp/network_ipc_param_traits.h
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/services/network/public/cpp/resource_response.cc
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/services/network/public/cpp/resource_response_info.h
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/third_party/WebKit/LayoutTests/http/tests/loading/sxg/resources/generate-test-sxgs.sh
[add] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/third_party/WebKit/LayoutTests/http/tests/loading/sxg/resources/sxg-usecounter.html
[add] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/third_party/WebKit/LayoutTests/http/tests/loading/sxg/resources/sxg-usecounter.sxg
[add] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/third_party/WebKit/LayoutTests/http/tests/loading/sxg/sxg-usecounter.html
[add] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/third_party/WebKit/LayoutTests/virtual/sxg-origin-trial-with-network-service/http/tests/loading/sxg/sxg-usecounter-expected.txt
[add] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/third_party/WebKit/LayoutTests/virtual/sxg-origin-trial/http/tests/loading/sxg/sxg-usecounter-expected.txt
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/third_party/blink/public/platform/web_feature.mojom
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/third_party/blink/public/platform/web_url_response.h
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/third_party/blink/renderer/core/loader/document_loader.cc
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/third_party/blink/renderer/platform/exported/web_url_response.cc
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/third_party/blink/renderer/platform/loader/fetch/resource_response.h
[modify] https://crrev.com/47d2905adb08605ed545d446bb04962569393f5f/tools/metrics/histograms/enums.xml

Project Member

Comment 2 by bugdroid1@chromium.org, Sep 7

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

commit 6ab4b359e05c0eb8198a670d3a789651f9b59f1b
Author: Kouhei Ueno <kouhei@chromium.org>
Date: Fri Sep 07 11:44:42 2018

NavigationHandle: Mark if target is a signed exchange

This CL prepares for measuring PageLoadMetrics for pages loaded through
SignedExchange.

This CL adds |NavigationHandle::IsSignedExchangeInnerResponse()| getter,
which can be used to distinguish signed exchange navigations.
The getter will be used in the following CL to selectively enable
the signed exchange page load metrics observer for recording drill-down
UMAs.

Bug: 863305
Change-Id: Ia3bad8d6c9daeef237879538fb8999b7f3df4a46
Reviewed-on: https://chromium-review.googlesource.com/1212375
Reviewed-by: Camille Lamy <clamy@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Takashi Toyoshima <toyoshim@chromium.org>
Commit-Queue: Kouhei Ueno <kouhei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#589493}
[modify] https://crrev.com/6ab4b359e05c0eb8198a670d3a789651f9b59f1b/content/browser/frame_host/navigation_handle_impl.cc
[modify] https://crrev.com/6ab4b359e05c0eb8198a670d3a789651f9b59f1b/content/browser/frame_host/navigation_handle_impl.h
[modify] https://crrev.com/6ab4b359e05c0eb8198a670d3a789651f9b59f1b/content/browser/frame_host/navigation_handle_impl_unittest.cc
[modify] https://crrev.com/6ab4b359e05c0eb8198a670d3a789651f9b59f1b/content/browser/frame_host/navigation_request.cc
[modify] https://crrev.com/6ab4b359e05c0eb8198a670d3a789651f9b59f1b/content/browser/web_package/signed_exchange_request_handler_browsertest.cc

Project Member

Comment 3 by bugdroid1@chromium.org, Sep 14

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

commit b3d334b5efe5da1620c81250d32ea37d58d6d83a
Author: Kouhei Ueno <kouhei@chromium.org>
Date: Fri Sep 14 03:37:06 2018

Introduce SignedExchangePageLoadMetricsObserver.

This CL measures PageLoadMetrics for pages loaded
through SignedExchange:
- Introduces SignedExchangePageLoadMetricsObserver and its unit test.
- Adds the new PLT metrics to histograms.xml.
- NavigationSimulator test infra adjusted to simulate signed exchange navigations.

Bug: 863305
Change-Id: Ia0aa85153e61b7e30cd92d5f9ce047cdc11b546e
Reviewed-on: https://chromium-review.googlesource.com/1209130
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Reviewed-by: Charlie Harrison <csharrison@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Kunihiko Sakamoto <ksakamoto@chromium.org>
Commit-Queue: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#591281}
[modify] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/chrome/browser/BUILD.gn
[add] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/chrome/browser/page_load_metrics/observers/signed_exchange_page_load_metrics_observer.cc
[add] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/chrome/browser/page_load_metrics/observers/signed_exchange_page_load_metrics_observer.h
[add] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/chrome/browser/page_load_metrics/observers/signed_exchange_page_load_metrics_observer_unittest.cc
[modify] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc
[modify] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/chrome/test/BUILD.gn
[modify] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/content/browser/frame_host/navigation_handle_impl.h
[modify] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/content/public/browser/navigation_handle.h
[modify] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/content/public/test/navigation_simulator.cc
[modify] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/content/public/test/navigation_simulator.h
[modify] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/content/test/test_render_frame_host.cc
[modify] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/content/test/test_render_frame_host.h
[modify] https://crrev.com/b3d334b5efe5da1620c81250d32ea37d58d6d83a/tools/metrics/histograms/histograms.xml

Project Member

Comment 4 by bugdroid1@chromium.org, Sep 18

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

commit 02c544c10750c22627ae2935e35c7c4e4b790e5c
Author: Kunihiko Sakamoto <ksakamoto@chromium.org>
Date: Tue Sep 18 04:05:42 2018

Add SignedExchangeLoadResult enum class

This will be used for UMA reporting.
Design doc: https://docs.google.com/document/d/1kzQRLybaUk12UgG8YTyACwNZ7tpcXwdjzPXU3CV25J8/edit

Bug: 863305
Change-Id: I5a302d833cb3f308ed9617819f65c6dd3f98ab70
Reviewed-on: https://chromium-review.googlesource.com/1226756
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Commit-Queue: Kunihiko Sakamoto <ksakamoto@chromium.org>
Cr-Commit-Position: refs/heads/master@{#591933}
[modify] https://crrev.com/02c544c10750c22627ae2935e35c7c4e4b790e5c/content/browser/web_package/signed_exchange_error.h

Project Member

Comment 6 by bugdroid1@chromium.org, Sep 18

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

commit 04ce8e41ff6a9c5404f852666488f7e5be6037ec
Author: Kunihiko Sakamoto <ksakamoto@chromium.org>
Date: Tue Sep 18 07:13:33 2018

Let SignedExchangeHandler report SignedExchangeLoadResult

Bug: 863305
Change-Id: I2af18b0efca1e02fd3a05e2e80f3300db7c4ea33
Reviewed-on: https://chromium-review.googlesource.com/1226487
Commit-Queue: Kunihiko Sakamoto <ksakamoto@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#591962}
[modify] https://crrev.com/04ce8e41ff6a9c5404f852666488f7e5be6037ec/content/browser/loader/prefetch_browsertest.cc
[modify] https://crrev.com/04ce8e41ff6a9c5404f852666488f7e5be6037ec/content/browser/web_package/mock_signed_exchange_handler.cc
[modify] https://crrev.com/04ce8e41ff6a9c5404f852666488f7e5be6037ec/content/browser/web_package/mock_signed_exchange_handler.h
[modify] https://crrev.com/04ce8e41ff6a9c5404f852666488f7e5be6037ec/content/browser/web_package/signed_exchange_handler.cc
[modify] https://crrev.com/04ce8e41ff6a9c5404f852666488f7e5be6037ec/content/browser/web_package/signed_exchange_handler.h
[modify] https://crrev.com/04ce8e41ff6a9c5404f852666488f7e5be6037ec/content/browser/web_package/signed_exchange_handler_unittest.cc
[modify] https://crrev.com/04ce8e41ff6a9c5404f852666488f7e5be6037ec/content/browser/web_package/signed_exchange_loader.cc
[modify] https://crrev.com/04ce8e41ff6a9c5404f852666488f7e5be6037ec/content/browser/web_package/signed_exchange_loader.h

Project Member

Comment 8 by bugdroid1@chromium.org, Sep 25

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

commit 51c1be148b61220af70c15da42a7eccd3aa8d2c8
Author: Kunihiko Sakamoto <ksakamoto@chromium.org>
Date: Tue Sep 25 02:58:30 2018

Add UMA histograms for SignedExchange signature timestamps

These will help to understand UA-side time skews.

Design doc:
https://docs.google.com/document/d/1kzQRLybaUk12UgG8YTyACwNZ7tpcXwdjzPXU3CV25J8/edit

Bug: 863305
Change-Id: I61d900cc6e6dd7d64ef49cd534a1837cf6b47b1d
Reviewed-on: https://chromium-review.googlesource.com/1237901
Commit-Queue: Kunihiko Sakamoto <ksakamoto@chromium.org>
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Tsuyoshi Horo <horo@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#593810}
[modify] https://crrev.com/51c1be148b61220af70c15da42a7eccd3aa8d2c8/content/browser/web_package/signed_exchange_signature_verifier.cc
[modify] https://crrev.com/51c1be148b61220af70c15da42a7eccd3aa8d2c8/content/browser/web_package/signed_exchange_signature_verifier_unittest.cc
[modify] https://crrev.com/51c1be148b61220af70c15da42a7eccd3aa8d2c8/tools/metrics/histograms/histograms.xml

Project Member

Comment 9 by bugdroid1@chromium.org, Sep 26

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

commit 9623e0418a093956aae75c830a16037954128816
Author: Kunihiko Sakamoto <ksakamoto@chromium.org>
Date: Wed Sep 26 10:59:41 2018

Add UMA histograms for SignedExchange verification steps

This patch adds the following histograms that record the results of
the Signed Exchange verification steps:

- SignedExchange.CertVerificationResult
- SignedExchange.CTVerificationResult
- SignedExchange.OCSPResponseStatus
- SignedExchange.OCSPRevocationStatus
- SignedExchange.SignatureVerificationResult

Design doc:
https://docs.google.com/document/d/1kzQRLybaUk12UgG8YTyACwNZ7tpcXwdjzPXU3CV25J8/edit

Bug: 863305
Change-Id: I88f1f65489d0ff63395e6989f146756f55431c4a
Reviewed-on: https://chromium-review.googlesource.com/1235355
Commit-Queue: Kunihiko Sakamoto <ksakamoto@chromium.org>
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Ryan Sleevi <rsleevi@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#594274}
[modify] https://crrev.com/9623e0418a093956aae75c830a16037954128816/content/browser/web_package/signed_exchange_handler.cc
[modify] https://crrev.com/9623e0418a093956aae75c830a16037954128816/content/browser/web_package/signed_exchange_handler_unittest.cc
[modify] https://crrev.com/9623e0418a093956aae75c830a16037954128816/content/browser/web_package/signed_exchange_signature_verifier.h
[modify] https://crrev.com/9623e0418a093956aae75c830a16037954128816/net/cert/ocsp_revocation_status.h
[modify] https://crrev.com/9623e0418a093956aae75c830a16037954128816/net/cert/ocsp_verify_result.h
[modify] https://crrev.com/9623e0418a093956aae75c830a16037954128816/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/9623e0418a093956aae75c830a16037954128816/tools/metrics/histograms/histograms.xml

Project Member

Comment 10 by bugdroid1@chromium.org, Nov 26

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

commit dca0b121a0f13c94a246c7a772b68f433f73f128
Author: Kouhei Ueno <kouhei@chromium.org>
Date: Mon Nov 26 08:40:36 2018

SignedExchange: If outer response was cached, plumb the info to inner response.

Bug: 863305
Change-Id: Id6d4a4fe4fce240972af183b3b5d2921cff4e51b
Reviewed-on: https://chromium-review.googlesource.com/c/1350442
Reviewed-by: Kunihiko Sakamoto <ksakamoto@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Tsuyoshi Horo <horo@chromium.org>
Commit-Queue: Kouhei Ueno <kouhei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#610786}
[modify] https://crrev.com/dca0b121a0f13c94a246c7a772b68f433f73f128/content/browser/web_package/signed_exchange_loader.cc

Project Member

Comment 11 by bugdroid1@chromium.org, Nov 29

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

commit f9831d4b34d222c22675acbdb445afb33e52f488
Author: Kouhei Ueno <kouhei@chromium.org>
Date: Thu Nov 29 05:46:30 2018

Add UseCounter SignedExchangeInnerResponseIn{Main,Sub}Frame

The new UseCounters will enable us to monitor its adoption in the wild.

This CL also adds them to UKM allow list.

Bug: 863305
Change-Id: Ie77ad0cba386c2a9a74005788d8c7ad508693bd2
Reviewed-on: https://chromium-review.googlesource.com/c/1350386
Commit-Queue: Kouhei Ueno <kouhei@chromium.org>
Reviewed-by: Kunihiko Sakamoto <ksakamoto@chromium.org>
Reviewed-by: Tsuyoshi Horo <horo@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Bryan McQuade <bmcquade@chromium.org>
Cr-Commit-Position: refs/heads/master@{#612060}
[modify] https://crrev.com/f9831d4b34d222c22675acbdb445afb33e52f488/chrome/browser/page_load_metrics/observers/use_counter/ukm_features.cc
[modify] https://crrev.com/f9831d4b34d222c22675acbdb445afb33e52f488/third_party/blink/public/platform/web_feature.mojom
[modify] https://crrev.com/f9831d4b34d222c22675acbdb445afb33e52f488/third_party/blink/renderer/core/loader/document_loader.cc
[modify] https://crrev.com/f9831d4b34d222c22675acbdb445afb33e52f488/tools/metrics/histograms/enums.xml

Sign in to add a comment