diff options
author | isherman@chromium.org <isherman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-07 03:23:02 +0000 |
---|---|---|
committer | isherman@chromium.org <isherman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-07 03:23:02 +0000 |
commit | 40852822956d0f3178dd36974a29e0da63ba535b (patch) | |
tree | b757e1cfd630b490ab66d4434518bcb82f1c48d4 /chrome | |
parent | f0af366ed5b1caf7e65e43c799f103efaafbc23f (diff) | |
download | chromium_src-40852822956d0f3178dd36974a29e0da63ba535b.zip chromium_src-40852822956d0f3178dd36974a29e0da63ba535b.tar.gz chromium_src-40852822956d0f3178dd36974a29e0da63ba535b.tar.bz2 |
Unroll Autofill metrics macros, since the metric names can vary over time.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6806021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80745 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/autofill/autofill_metrics.cc | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/chrome/browser/autofill/autofill_metrics.cc b/chrome/browser/autofill/autofill_metrics.cc index 4395edc..b365840 100644 --- a/chrome/browser/autofill/autofill_metrics.cc +++ b/chrome/browser/autofill/autofill_metrics.cc @@ -7,6 +7,26 @@ #include "base/logging.h" #include "base/metrics/histogram.h" +namespace { + +void LogUMAHistogramEnumeration(const std::string& name, + int sample, + int boundary_value) { + // We can't use the UMA_HISTOGRAM_ENUMERATION macro here because the histogram + // name can vary over the duration of the program. + // Note that this leaks memory; that is expected behavior. + base::Histogram* counter = + base::LinearHistogram::FactoryGet( + name, + 1, + boundary_value, + boundary_value + 1, + base::Histogram::kUmaTargetedHistogramFlag); + counter->Add(sample); +} + +} // namespace + AutofillMetrics::AutofillMetrics() { } @@ -35,8 +55,8 @@ void AutofillMetrics::Log(PredictedTypeQualityMetric metric, if (!experiment_id.empty()) histogram_name += "_" + experiment_id; - UMA_HISTOGRAM_ENUMERATION(histogram_name, metric, - NUM_PREDICTED_TYPE_QUALITY_METRICS); + LogUMAHistogramEnumeration(histogram_name, metric, + NUM_PREDICTED_TYPE_QUALITY_METRICS); } void AutofillMetrics::Log(QualityMetric metric, @@ -47,7 +67,7 @@ void AutofillMetrics::Log(QualityMetric metric, if (!experiment_id.empty()) histogram_name += "_" + experiment_id; - UMA_HISTOGRAM_ENUMERATION(histogram_name, metric, NUM_QUALITY_METRICS); + LogUMAHistogramEnumeration(histogram_name, metric, NUM_QUALITY_METRICS); } void AutofillMetrics::Log(ServerQueryMetric metric) const { @@ -65,8 +85,8 @@ void AutofillMetrics::Log(ServerTypeQualityMetric metric, if (!experiment_id.empty()) histogram_name += "_" + experiment_id; - UMA_HISTOGRAM_ENUMERATION(histogram_name, metric, - NUM_SERVER_TYPE_QUALITY_METRICS); + LogUMAHistogramEnumeration(histogram_name, metric, + NUM_SERVER_TYPE_QUALITY_METRICS); } void AutofillMetrics::LogStoredProfileCount(size_t num_profiles) const { @@ -76,4 +96,3 @@ void AutofillMetrics::LogStoredProfileCount(size_t num_profiles) const { void AutofillMetrics::LogAddressSuggestionsCount(size_t num_suggestions) const { UMA_HISTOGRAM_COUNTS("Autofill.AddressSuggestionsCount", num_suggestions); } - |