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

Unified Diff: components/subresource_filter/content/browser/activation_state_computing_navigation_throttle.cc

Issue 2861053004: [subresource_filter] Add metrics for all NavigationThrottle delays (Closed)
Patch Set: microseconds Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/subresource_filter/content/browser/activation_state_computing_navigation_throttle.cc
diff --git a/components/subresource_filter/content/browser/activation_state_computing_navigation_throttle.cc b/components/subresource_filter/content/browser/activation_state_computing_navigation_throttle.cc
index 0e755245c872288e89c058fef4010c9bb05cf36e..01c8cb75e45b153366c880e5df4fb43866586b1f 100644
--- a/components/subresource_filter/content/browser/activation_state_computing_navigation_throttle.cc
+++ b/components/subresource_filter/content/browser/activation_state_computing_navigation_throttle.cc
@@ -9,7 +9,9 @@
#include "base/bind.h"
#include "base/callback.h"
#include "base/memory/ptr_util.h"
+#include "base/metrics/histogram_macros.h"
#include "components/subresource_filter/content/browser/async_document_subresource_filter.h"
+#include "components/subresource_filter/core/common/time_measurements.h"
#include "content/public/browser/navigation_handle.h"
#include "content/public/browser/render_frame_host.h"
#include "content/public/browser/web_contents.h"
@@ -92,6 +94,8 @@ ActivationStateComputingNavigationThrottle::WillProcessResponse() {
base::Bind(&ActivationStateComputingNavigationThrottle::
OnActivationStateComputed,
weak_ptr_factory_.GetWeakPtr()));
+
+ defer_timestamp_ = base::TimeTicks::Now();
return content::NavigationThrottle::ThrottleCheckResult::DEFER;
}
@@ -101,6 +105,18 @@ const char* ActivationStateComputingNavigationThrottle::GetNameForLogging() {
void ActivationStateComputingNavigationThrottle::OnActivationStateComputed(
ActivationState state) {
+ DCHECK(!defer_timestamp_.is_null());
+ base::TimeDelta delay = base::TimeTicks::Now() - defer_timestamp_;
+ UMA_HISTOGRAM_CUSTOM_MICRO_TIMES(
+ "SubresourceFilter.DocumentLoad.ActivationComputingDelay", delay,
+ base::TimeDelta::FromMicroseconds(1), base::TimeDelta::FromSeconds(10),
+ 50);
+ if (navigation_handle()->IsInMainFrame()) {
+ UMA_HISTOGRAM_CUSTOM_MICRO_TIMES(
+ "SubresourceFilter.DocumentLoad.ActivationComputingDelay.MainFrame",
+ delay, base::TimeDelta::FromMicroseconds(1),
+ base::TimeDelta::FromSeconds(10), 50);
+ }
navigation_handle()->Resume();
}

Powered by Google App Engine
This is Rietveld 408576698