OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/prerender/prerender_histograms.h" | 5 #include "chrome/browser/prerender/prerender_histograms.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/metrics/field_trial.h" | 9 #include "base/metrics/field_trial.h" |
10 #include "base/metrics/histogram.h" | 10 #include "base/metrics/histogram.h" |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 UMA_HISTOGRAM_CUSTOM_TIMES( \ | 158 UMA_HISTOGRAM_CUSTOM_TIMES( \ |
159 name, \ | 159 name, \ |
160 perceived_page_load_time, \ | 160 perceived_page_load_time, \ |
161 base::TimeDelta::FromMilliseconds(10), \ | 161 base::TimeDelta::FromMilliseconds(10), \ |
162 base::TimeDelta::FromSeconds(60), \ | 162 base::TimeDelta::FromSeconds(60), \ |
163 100)); \ | 163 100)); \ |
164 } | 164 } |
165 | 165 |
166 void PrerenderHistograms::RecordPerceivedPageLoadTime( | 166 void PrerenderHistograms::RecordPerceivedPageLoadTime( |
167 base::TimeDelta perceived_page_load_time, bool was_prerender, | 167 base::TimeDelta perceived_page_load_time, bool was_prerender, |
168 const GURL& url) { | 168 bool was_complete_prerender, const GURL& url) { |
169 if (!IsWebURL(url)) | 169 if (!IsWebURL(url)) |
170 return; | 170 return; |
171 bool within_window = WithinWindow(); | 171 bool within_window = WithinWindow(); |
172 bool is_google_url = IsGoogleDomain(url); | 172 bool is_google_url = IsGoogleDomain(url); |
173 RECORD_PLT("PerceivedPLT", perceived_page_load_time); | 173 RECORD_PLT("PerceivedPLT", perceived_page_load_time); |
174 if (within_window) | 174 if (within_window) |
175 RECORD_PLT("PerceivedPLTWindowed", perceived_page_load_time); | 175 RECORD_PLT("PerceivedPLTWindowed", perceived_page_load_time); |
176 if (was_prerender) { | 176 if (was_prerender || was_complete_prerender) { |
177 RECORD_PLT("PerceivedPLTMatched", perceived_page_load_time); | 177 if (was_prerender) |
| 178 RECORD_PLT("PerceivedPLTMatched", perceived_page_load_time); |
| 179 if (was_complete_prerender) |
| 180 RECORD_PLT("PerceivedPLTMatchedComplete", perceived_page_load_time); |
178 seen_any_pageload_ = true; | 181 seen_any_pageload_ = true; |
179 seen_pageload_started_after_prerender_ = true; | 182 seen_pageload_started_after_prerender_ = true; |
180 } else if (within_window) { | 183 } else if (within_window) { |
181 RECORD_PLT("PerceivedPLTWindowNotMatched", perceived_page_load_time); | 184 RECORD_PLT("PerceivedPLTWindowNotMatched", perceived_page_load_time); |
182 if (!is_google_url) { | 185 if (!is_google_url) { |
183 bool recorded_any = false; | 186 bool recorded_any = false; |
184 bool recorded_non_overlapping = false; | 187 bool recorded_non_overlapping = false; |
185 if (!seen_any_pageload_) { | 188 if (!seen_any_pageload_) { |
186 seen_any_pageload_ = true; | 189 seen_any_pageload_ = true; |
187 RECORD_PLT("PerceivedPLTFirstAfterMiss", perceived_page_load_time); | 190 RECORD_PLT("PerceivedPLTFirstAfterMiss", perceived_page_load_time); |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
268 return last_origin_; | 271 return last_origin_; |
269 } | 272 } |
270 | 273 |
271 bool PrerenderHistograms::IsOriginExperimentWash() const { | 274 bool PrerenderHistograms::IsOriginExperimentWash() const { |
272 if (!WithinWindow()) | 275 if (!WithinWindow()) |
273 return false; | 276 return false; |
274 return origin_experiment_wash_; | 277 return origin_experiment_wash_; |
275 } | 278 } |
276 | 279 |
277 } // namespace prerender | 280 } // namespace prerender |
OLD | NEW |