diff options
author | timvolodine <timvolodine@chromium.org> | 2014-08-28 09:39:32 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-08-28 16:41:54 +0000 |
commit | ab7555f4979feef26b9c9c4f9f74aa462ce9927f (patch) | |
tree | 9d94b52a67dd0a2b2dece00ff2472f69b44c8da4 | |
parent | 141787d8f1d97fa077f5cbd95b917d3e2f7f7332 (diff) | |
download | chromium_src-ab7555f4979feef26b9c9c4f9f74aa462ce9927f.zip chromium_src-ab7555f4979feef26b9c9c4f9f74aa462ce9927f.tar.gz chromium_src-ab7555f4979feef26b9c9c4f9f74aa462ce9927f.tar.bz2 |
Battery Status API: add UMA logging for Linux.
Adds UMA logging to track how many batteries are reported
by the system at the start of Battery Status API.
BUG=
Review URL: https://codereview.chromium.org/480113003
Cr-Commit-Position: refs/heads/master@{#292398}
-rw-r--r-- | content/browser/battery_status/battery_status_manager_linux.cc | 11 | ||||
-rw-r--r-- | tools/metrics/histograms/histograms.xml | 13 |
2 files changed, 23 insertions, 1 deletions
diff --git a/content/browser/battery_status/battery_status_manager_linux.cc b/content/browser/battery_status/battery_status_manager_linux.cc index 6539f05..d09a3df 100644 --- a/content/browser/battery_status/battery_status_manager_linux.cc +++ b/content/browser/battery_status/battery_status_manager_linux.cc @@ -5,6 +5,7 @@ #include "content/browser/battery_status/battery_status_manager_linux.h" #include "base/macros.h" +#include "base/metrics/histogram.h" #include "base/threading/thread.h" #include "base/values.h" #include "content/browser/battery_status/battery_status_manager.h" @@ -96,6 +97,11 @@ scoped_ptr<PathsVector> GetPowerSourcesPaths(dbus::ObjectProxy* proxy) { return paths.Pass();; } +void UpdateNumberBatteriesHistogram(int count) { + UMA_HISTOGRAM_CUSTOM_COUNTS( + "BatteryStatus.NumberBatteriesLinux", count, 1, 5, 6); +} + // Class that represents a dedicated thread which communicates with DBus to // obtain battery information and receives battery change notifications. class BatteryStatusNotificationThread : public base::Thread { @@ -131,6 +137,7 @@ class BatteryStatusNotificationThread : public base::Thread { system_bus_->GetObjectProxy(kUPowerServiceName, dbus::ObjectPath(kUPowerPath)); scoped_ptr<PathsVector> device_paths = GetPowerSourcesPaths(power_proxy); + int num_batteries = 0; for (size_t i = 0; i < device_paths->size(); ++i) { const dbus::ObjectPath& device_path = device_paths->at(i); @@ -157,14 +164,16 @@ class BatteryStatusNotificationThread : public base::Thread { // TODO(timvolodine): add support for multiple batteries. Currently we // only collect information from the first battery we encounter // (crbug.com/400780). - // TODO(timvolodine): add UMA logging for this case. LOG(WARNING) << "multiple batteries found, " << "using status data of the first battery only."; } else { battery_proxy_ = device_proxy; } + num_batteries++; } + UpdateNumberBatteriesHistogram(num_batteries); + if (!battery_proxy_) { callback_.Run(blink::WebBatteryStatus()); return; diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml index 4a5c9eb..ea452f7 100644 --- a/tools/metrics/histograms/histograms.xml +++ b/tools/metrics/histograms/histograms.xml @@ -1927,6 +1927,15 @@ Therefore, the affected-histogram name has to have at least one dot in it. </summary> </histogram> +<histogram name="BatteryStatus.NumberBatteriesLinux" + enum="BatteryStatusNumberBatteriesLinux"> + <owner>timvolodine@chromium.org</owner> + <summary> + Number of batteries reported by the UPower service on Linux at the start of + the Battery Status API. + </summary> +</histogram> + <histogram name="BatteryStatus.StartAndroid" enum="BooleanSuccess"> <owner>timvolodine@chromium.org</owner> <summary> @@ -37848,6 +37857,10 @@ Therefore, the affected-histogram name has to have at least one dot in it. <int value="2" label="Bad"/> </enum> +<enum name="BatteryStatusNumberBatteriesLinux" type="int"> + <int value="5" label="5+"/> +</enum> + <enum name="BlacklistSetup" type="int"> <int value="0" label="Blacklist enabled"/> <int value="1" label="Blacklist ran successfully."/> |