diff options
author | jeremy@chromium.org <jeremy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-18 21:38:46 +0000 |
---|---|---|
committer | jeremy@chromium.org <jeremy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-18 21:38:46 +0000 |
commit | fa9664f40ae3deb366e005d1ecf06412bc84d5c3 (patch) | |
tree | e3321985c46e2eca630709cc5b8c692330b880a7 /tools/perf | |
parent | 821f3a4e6b24e47f599eabe89ada1c2d807db6da (diff) | |
download | chromium_src-fa9664f40ae3deb366e005d1ecf06412bc84d5c3.zip chromium_src-fa9664f40ae3deb366e005d1ecf06412bc84d5c3.tar.gz chromium_src-fa9664f40ae3deb366e005d1ecf06412bc84d5c3.tar.bz2 |
[Telemetry] Friendlier error messages if power metric is disabled.
* Advise user to use the --report-root-metrics flag to enable power measurement.
* Only print warning about power measurement being disabled once for a test rather than every time a power metric is disabled.
BUG=
Review URL: https://codereview.chromium.org/196133026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257767 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/perf')
-rw-r--r-- | tools/perf/metrics/power.py | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/tools/perf/metrics/power.py b/tools/perf/metrics/power.py index 075603b..fbe3511 100644 --- a/tools/perf/metrics/power.py +++ b/tools/perf/metrics/power.py @@ -5,12 +5,13 @@ import logging from metrics import Metric +from telemetry.core.platform import factory class PowerMetric(Metric): """A metric for measuring power usage.""" - _enabled = True + enabled = True def __init__(self): super(PowerMetric, self).__init__() @@ -36,14 +37,24 @@ class PowerMetric(Metric): @classmethod def CustomizeBrowserOptions(cls, options): - PowerMetric._enabled = options.report_root_metrics + PowerMetric.enabled = options.report_root_metrics + + # Friendly informational messages if measurement won't run. + system_supports_power_monitoring = ( + factory.GetPlatformBackendForCurrentOS().CanMonitorPowerAsync()) + if system_supports_power_monitoring: + if not PowerMetric.enabled: + logging.warning( + "--report-root-metrics omitted, power measurement disabled.") + else: + logging.info("System doesn't support power monitoring, power measurement" + " disabled.") def Start(self, _, tab): - if not PowerMetric._enabled: + if not PowerMetric.enabled: return if not tab.browser.platform.CanMonitorPowerAsync(): - logging.warning("System doesn't support async power monitoring.") return self._results = None @@ -54,7 +65,7 @@ class PowerMetric(Metric): self._running = True def Stop(self, _, tab): - if not PowerMetric._enabled: + if not PowerMetric.enabled: return if not tab.browser.platform.CanMonitorPowerAsync(): |