'Monitors are responsible for populating this metric_list object
with nova.objects.MonitorMetric objects with values collected via
the respective compute drivers.
Note that if the monitor class is responsible for tracking a *related*
set of metrics -- e.g. a set of percentages of CPU time allocated to
user, kernel, and idle -- it is the responsibility of the monitor
implementation to do a single sampling call to the underlying monitor
to ensure that related metric values make logical sense.
:param metric_list: A mutable reference of the metric list object'

@abc.abstractmethod
def populate_metrics(self, metric_list):

    raise NotImplementedError('populate_metrics')
