Source code
Revision control
Copy as Markdown
Other Tools
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
from mozperftest.layers import Layers
from mozperftest.metrics.consoleoutput import ConsoleOutput
from mozperftest.metrics.eval import EvalMetrics
from mozperftest.metrics.notebookupload import Notebook
from mozperftest.metrics.perfboard.influx import Influx
from mozperftest.metrics.perfherder import Perfherder
from mozperftest.metrics.visualmetrics import VisualMetrics
def get_layers():
return VisualMetrics, Perfherder, ConsoleOutput, Notebook, Influx
def pick_metrics(env, flavor, mach_cmd):
if flavor in ("desktop-browser", "mobile-browser"):
layers = get_layers()
elif flavor == "eval-mochitest":
# EvalMetrics must come before Perfherder so that eval results
# are added to metadata before Perfherder processes them.
layers = EvalMetrics, Perfherder, ConsoleOutput
elif flavor == "alert":
# We get data that is already in a perfherder
# data format so there's no need to use any metric
# layers with the alert flavor
layers = []
else:
# we don't need VisualMetrics for xpcshell
layers = Perfherder, ConsoleOutput, Notebook, Influx
return Layers(env, mach_cmd, layers)