| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/format_macros.h" | 9 #include "base/format_macros.h" |
| 10 #include "base/metrics/field_trial.h" | 10 #include "base/metrics/field_trial.h" |
| (...skipping 28 matching lines...) Expand all Loading... |
| 39 return ComposeHistogramName("exp" + std::string(1, experiment_id + '0'), | 39 return ComposeHistogramName("exp" + std::string(1, experiment_id + '0'), |
| 40 name); | 40 name); |
| 41 } | 41 } |
| 42 | 42 |
| 43 if (experiment_id != kNoExperiment) | 43 if (experiment_id != kNoExperiment) |
| 44 return ComposeHistogramName("wash", name); | 44 return ComposeHistogramName("wash", name); |
| 45 | 45 |
| 46 switch (origin) { | 46 switch (origin) { |
| 47 case ORIGIN_OMNIBOX: | 47 case ORIGIN_OMNIBOX: |
| 48 return ComposeHistogramName("omnibox", name); | 48 return ComposeHistogramName("omnibox", name); |
| 49 case ORIGIN_LINK_REL_PRERENDER: | 49 case ORIGIN_LINK_REL_PRERENDER_SAMEDOMAIN: |
| 50 return ComposeHistogramName("web", name); | 50 return ComposeHistogramName("websame", name); |
| 51 case ORIGIN_LINK_REL_PRERENDER_CROSSDOMAIN: |
| 52 return ComposeHistogramName("webcross", name); |
| 51 case ORIGIN_LOCAL_PREDICTOR: | 53 case ORIGIN_LOCAL_PREDICTOR: |
| 52 return ComposeHistogramName("local", name); | 54 return ComposeHistogramName("local", name); |
| 53 case ORIGIN_NONE: | 55 case ORIGIN_NONE: |
| 54 return ComposeHistogramName("none", name); | 56 return ComposeHistogramName("none", name); |
| 55 case ORIGIN_GWS_PRERENDER: // Handled above. | 57 case ORIGIN_GWS_PRERENDER: // Handled above. |
| 56 default: | 58 default: |
| 57 NOTREACHED(); | 59 NOTREACHED(); |
| 58 break; | 60 break; |
| 59 }; | 61 }; |
| 60 | 62 |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 94 std::string name = GetHistogramName(origin, experiment, wash, \ | 96 std::string name = GetHistogramName(origin, experiment, wash, \ |
| 95 histogram_name); \ | 97 histogram_name); \ |
| 96 static uint8 recording_experiment = kNoExperiment; \ | 98 static uint8 recording_experiment = kNoExperiment; \ |
| 97 if (recording_experiment == kNoExperiment && experiment != kNoExperiment) \ | 99 if (recording_experiment == kNoExperiment && experiment != kNoExperiment) \ |
| 98 recording_experiment = experiment; \ | 100 recording_experiment = experiment; \ |
| 99 if (wash) { \ | 101 if (wash) { \ |
| 100 HISTOGRAM; \ | 102 HISTOGRAM; \ |
| 101 } else if (experiment != kNoExperiment && \ | 103 } else if (experiment != kNoExperiment && \ |
| 102 (origin != ORIGIN_GWS_PRERENDER || \ | 104 (origin != ORIGIN_GWS_PRERENDER || \ |
| 103 experiment != recording_experiment)) { \ | 105 experiment != recording_experiment)) { \ |
| 104 } else if (origin == ORIGIN_LINK_REL_PRERENDER) { \ | 106 } else if (origin == ORIGIN_OMNIBOX) { \ |
| 105 HISTOGRAM; \ | 107 HISTOGRAM; \ |
| 106 } else if (origin == ORIGIN_OMNIBOX) { \ | 108 } else if (origin == ORIGIN_LINK_REL_PRERENDER_SAMEDOMAIN) { \ |
| 109 HISTOGRAM; \ |
| 110 } else if (origin == ORIGIN_LINK_REL_PRERENDER_CROSSDOMAIN) { \ |
| 107 HISTOGRAM; \ | 111 HISTOGRAM; \ |
| 108 } else if (experiment != kNoExperiment) { \ | 112 } else if (experiment != kNoExperiment) { \ |
| 109 HISTOGRAM; \ | 113 HISTOGRAM; \ |
| 110 } else { \ | 114 } else { \ |
| 111 HISTOGRAM; \ | 115 HISTOGRAM; \ |
| 112 } \ | 116 } \ |
| 113 } | 117 } |
| 114 | 118 |
| 115 PrerenderHistograms::PrerenderHistograms(base::TimeDelta prerender_ttl) | 119 PrerenderHistograms::PrerenderHistograms(base::TimeDelta prerender_ttl) |
| 116 : last_experiment_id_(kNoExperiment), | 120 : last_experiment_id_(kNoExperiment), |
| 117 last_origin_(ORIGIN_LINK_REL_PRERENDER), | 121 last_origin_(ORIGIN_LINK_REL_PRERENDER_CROSSDOMAIN), |
| 118 origin_experiment_wash_(false), | 122 origin_experiment_wash_(false), |
| 119 prerender_ttl_(prerender_ttl), | 123 prerender_ttl_(prerender_ttl), |
| 120 seen_any_pageload_(true), | 124 seen_any_pageload_(true), |
| 121 seen_pageload_started_after_prerender_(true) { | 125 seen_pageload_started_after_prerender_(true) { |
| 122 } | 126 } |
| 123 | 127 |
| 124 void PrerenderHistograms::RecordPrerender(Origin origin, const GURL& url) { | 128 void PrerenderHistograms::RecordPrerender(Origin origin, const GURL& url) { |
| 125 // Check if we are doing an experiment. | 129 // Check if we are doing an experiment. |
| 126 uint8 experiment = GetQueryStringBasedExperiment(url); | 130 uint8 experiment = GetQueryStringBasedExperiment(url); |
| 127 | 131 |
| (...skipping 296 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 424 "LocalPredictorTimeUntilUsed", origin, | 428 "LocalPredictorTimeUntilUsed", origin, |
| 425 UMA_HISTOGRAM_CUSTOM_TIMES( | 429 UMA_HISTOGRAM_CUSTOM_TIMES( |
| 426 name, | 430 name, |
| 427 time_until_used, | 431 time_until_used, |
| 428 base::TimeDelta::FromMilliseconds(10), | 432 base::TimeDelta::FromMilliseconds(10), |
| 429 max_age, | 433 max_age, |
| 430 50)); | 434 50)); |
| 431 } | 435 } |
| 432 | 436 |
| 433 } // namespace prerender | 437 } // namespace prerender |
| OLD | NEW |