diff options
-rw-r--r-- | content/renderer/service_worker/service_worker_script_context.cc | 6 | ||||
-rw-r--r-- | tools/metrics/histograms/histograms.xml | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/content/renderer/service_worker/service_worker_script_context.cc b/content/renderer/service_worker/service_worker_script_context.cc index d8eeb25..65fc5e7 100644 --- a/content/renderer/service_worker/service_worker_script_context.cc +++ b/content/renderer/service_worker/service_worker_script_context.cc @@ -227,7 +227,13 @@ void ServiceWorkerScriptContext::OnPostMessage( } } + // dispatchMessageEvent is expected to execute onmessage function + // synchronously. + base::TimeTicks before = base::TimeTicks::Now(); proxy_->dispatchMessageEvent(message, ports); + UMA_HISTOGRAM_TIMES( + "ServiceWorker.MessageEventExecutionTime", + base::TimeTicks::Now() - before); } void ServiceWorkerScriptContext::OnDidGetClientDocuments( diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml index cd5689c4..b9e73d0 100644 --- a/tools/metrics/histograms/histograms.xml +++ b/tools/metrics/histograms/histograms.xml @@ -29506,6 +29506,11 @@ Therefore, the affected-histogram name has to have at least one dot in it. <summary>Execution time of ServiceWorkerGlobalScope.oninstall.</summary> </histogram> +<histogram name="ServiceWorker.MessageEventExecutionTime" units="millisecond"> + <owner>shimazu@chromium.org</owner> + <summary>Execution time of ServiceWorkerGlobalScope.onmessage.</summary> +</histogram> + <histogram name="ServiceWorker.ScriptSize" units="bytes"> <owner>ksakamoto@chromium.org</owner> <summary> |