Measure elapsed time to check ServiceWorker allowed
To understand the cost to check if the ServiceWorker is allowed inside `ServiceWorkerContainerHostForClient`, let me add a metrics for that. Change-Id: I1aad423725e0aaaab35afd72b5ffdfa7fa0c6781 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6332354 Reviewed-by: Shunya Shishido <sisidovski@chromium.org> Auto-Submit: Yoshisato Yanagisawa <yyanagisawa@chromium.org> Commit-Queue: Shunya Shishido <sisidovski@chromium.org> Cr-Commit-Position: refs/heads/main@{#1428752}
This commit is contained in:

committed by
Chromium LUCI CQ

parent
6f99c26902
commit
571fcd3c7e
content/browser/service_worker
tools/metrics/histograms/metadata/service
@@ -727,6 +727,7 @@ bool ServiceWorkerContainerHostForClient::AllowServiceWorker(
|
||||
if (!browser_context) {
|
||||
return false;
|
||||
}
|
||||
auto start_time = base::TimeTicks::Now();
|
||||
AllowServiceWorkerResult allowed =
|
||||
GetContentClient()->browser()->AllowServiceWorker(
|
||||
scope,
|
||||
@@ -734,6 +735,9 @@ bool ServiceWorkerContainerHostForClient::AllowServiceWorker(
|
||||
service_worker_client().key()),
|
||||
service_worker_client().top_frame_origin(), script_url,
|
||||
browser_context);
|
||||
base::UmaHistogramMicrosecondsTimes(
|
||||
"ServiceWorker.ContainerHostForClient.AllowServiceWorkerCallTime",
|
||||
base::TimeTicks::Now() - start_time);
|
||||
if (service_worker_client().IsContainerForWindowClient()) {
|
||||
auto* rfh = RenderFrameHostImpl::FromID(
|
||||
service_worker_client().GetRenderFrameHostId());
|
||||
|
@@ -236,6 +236,21 @@ chromium-metrics-reviews@google.com.
|
||||
</summary>
|
||||
</histogram>
|
||||
|
||||
<histogram
|
||||
name="ServiceWorker.ContainerHostForClient.AllowServiceWorkerCallTime"
|
||||
units="microseconds" expires_after="2025-09-06">
|
||||
<owner>yyanagisawa@chromium.org</owner>
|
||||
<owner>chrome-worker@google.com</owner>
|
||||
<summary>
|
||||
Time spent to check ServiceWorker allowed on the context. Recorded when
|
||||
ServiceWorker is registered, updated, or deleted for non-ServiceWorker
|
||||
client.
|
||||
|
||||
Note: The metrics is reported from all clients. Some of clients may not have
|
||||
high resolution timer that can send metrics with microseconds precision.
|
||||
</summary>
|
||||
</histogram>
|
||||
|
||||
<histogram name="ServiceWorker.CorsExemptHeaderListSize" units="count"
|
||||
expires_after="2025-08-24">
|
||||
<owner>sisidovski@chromium.org</owner>
|
||||
|
Reference in New Issue
Block a user