Index: chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer.cc |
diff --git a/chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer.cc b/chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer.cc |
index 60ff8c602eebe8b8d39c2bb834d028e628b0a0d9..81491ab2c152ea8f109bcbb09f25c8392d27fb70 100644 |
--- a/chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer.cc |
+++ b/chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer.cc |
@@ -7,8 +7,10 @@ |
#include "base/metrics/histogram_macros.h" |
#include "base/strings/string_util.h" |
+#include "chrome/browser/browser_process.h" |
#include "chrome/browser/page_load_metrics/page_load_metrics_util.h" |
#include "chrome/common/page_load_metrics/page_load_timing.h" |
+#include "components/ukm/public/ukm_recorder.h" |
using page_load_metrics::PageAbortReason; |
@@ -109,6 +111,8 @@ const char kHistogramFromGWSForegroundDurationWithoutPaint[] = |
const char kHistogramFromGWSForegroundDurationNoCommit[] = |
"PageLoad.Clients.FromGoogleSearch.PageTiming.ForegroundDuration.NoCommit"; |
+const char kUkmFromGoogleSearchName[] = "FromGoogleSearch"; |
+ |
} // namespace internal |
namespace { |
@@ -359,6 +363,7 @@ FromGWSPageLoadMetricsObserver::OnCommit( |
navigation_handle->GetPageTransition())); |
logger_.SetNavigationStart(navigation_handle->NavigationStart()); |
+ logger_.OnCommit(navigation_handle, source_id); |
return CONTINUE_OBSERVING; |
} |
@@ -435,6 +440,18 @@ void FromGWSPageLoadMetricsObserver::OnUserInput( |
logger_.OnUserInput(event); |
} |
+void FromGWSPageLoadMetricsLogger::OnCommit( |
+ content::NavigationHandle* navigation_handle, |
+ ukm::SourceId source_id) { |
+ if (!ShouldLogPostCommitMetrics(navigation_handle->GetURL())) |
+ return; |
+ ukm::UkmRecorder* ukm_recorder = g_browser_process->ukm_recorder(); |
+ if (ukm_recorder) { |
+ ukm_recorder->GetEntryBuilder(source_id, |
+ internal::kUkmFromGoogleSearchName); |
+ } |
+} |
+ |
void FromGWSPageLoadMetricsLogger::OnComplete( |
const page_load_metrics::mojom::PageLoadTiming& timing, |
const page_load_metrics::PageLoadExtraInfo& extra_info) { |