Add sparse histograms to the metrics library and metrics client.
Samples to these histograms are any 32-bit int value.
BUG=chromium:222189
TEST=manual
Change-Id: Ic8d5773d05d717a275c4a4b5616e0e4c307337b8
Reviewed-on: https://gerrit.chromium.org/gerrit/45897
Tested-by: Luigi Semenzato <semenzato@chromium.org>
Reviewed-by: Darin Petkov <petkov@chromium.org>
Commit-Queue: Luigi Semenzato <semenzato@chromium.org>
Reviewed-by: Luigi Semenzato <semenzato@chromium.org>
diff --git a/metrics/metrics_library.cc b/metrics/metrics_library.cc
index 1c7c28d..e5aaae6 100644
--- a/metrics/metrics_library.cc
+++ b/metrics/metrics_library.cc
@@ -290,6 +290,19 @@
return SendMessageToChrome(message_length, message);
}
+bool MetricsLibrary::SendSparseToUMA(const std::string& name, int sample) {
+ // Format the message.
+ char message[kBufferSize];
+ int32_t message_length =
+ FormatChromeMessage(kBufferSize, message, "sparsehistogram%c%s %d",
+ '\0', name.c_str(), sample);
+ if (message_length < 0)
+ return false;
+
+ // Send the message.
+ return SendMessageToChrome(message_length, message);
+}
+
bool MetricsLibrary::SendUserActionToUMA(const std::string& action) {
// Format the message.
char message[kBufferSize];