예제 #1
0
    def test_counts(self):
        lc = data_setup.create_labcontroller()
        manual_system = data_setup.create_system(lab_controller=lc)
        data_setup.create_manual_reservation(manual_system,
                start=datetime.datetime(2012, 1, 1, 0, 0, 0))
        recipe_system = data_setup.create_system(lab_controller=lc)
        data_setup.mark_recipe_running(
                data_setup.create_job().recipesets[0].recipes[0],
                system=recipe_system)
        idle_manual_system = data_setup.create_system(lab_controller=lc,
                status=SystemStatus.manual)
        idle_automated_system = data_setup.create_system(lab_controller=lc,
                status=SystemStatus.automated)
        idle_broken_system = data_setup.create_system(lab_controller=lc,
                status=SystemStatus.broken)
        idle_removed_system = data_setup.create_system(lab_controller=lc,
                status=SystemStatus.removed)
        session.flush()

        counts = system_utilisation_counts(System.query.filter(
                System.lab_controller == lc))
        self.assertEqual(counts['recipe'], 1)
        self.assertEqual(counts['manual'], 1)
        self.assertEqual(counts['idle_manual'], 1)
        self.assertEqual(counts['idle_automated'], 1)
        self.assertEqual(counts['idle_broken'], 1)
        self.assertEqual(counts['idle_removed'], 1)
예제 #2
0
def _system_count_metrics_for_query(name, query):
    counts = utilisation.system_utilisation_counts(query)
    for state, count in counts.iteritems():
        if state != 'idle_removed':
            metrics.measure('gauges.systems_%s.%s' % (state, name), count)
예제 #3
0
def _system_count_metrics_for_query(name, query):
    counts = utilisation.system_utilisation_counts(query)
    for state, count in counts.iteritems():
        if state != 'idle_removed':
            metrics.measure('gauges.systems_%s.%s' % (state, name), count)