summaryrefslogtreecommitdiffstats
path: root/tools/perf
diff options
context:
space:
mode:
authorjeremy@chromium.org <jeremy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-18 21:38:46 +0000
committerjeremy@chromium.org <jeremy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-18 21:38:46 +0000
commitfa9664f40ae3deb366e005d1ecf06412bc84d5c3 (patch)
treee3321985c46e2eca630709cc5b8c692330b880a7 /tools/perf
parent821f3a4e6b24e47f599eabe89ada1c2d807db6da (diff)
downloadchromium_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.py21
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():