def test_compare_thresh(self):
        values = [501, 500, 4999]
        self.assertEqual('ALARM',
                         calculator.compare_thresh(values, 'GTE', 500))

        self.assertEqual('OK', calculator.compare_thresh(values, 'GT', 500))

        values = [501, 500, 4999, None]
        self.assertEqual('UNDETERMINED',
                         calculator.compare_thresh(values, 'LTE', 5000))

        values = [501, 500, 4999, None]
        self.assertEqual('OK', calculator.compare_thresh(values, 'LT', 4999))
    def test_compare_thresh(self):
        values = [501, 500, 4999]
        self.assertEqual('ALARM',
                         calculator.compare_thresh(values, 'GTE', 500))

        self.assertEqual('OK', calculator.compare_thresh(values, 'GT', 500))

        values = [501, 500, 4999, None]
        self.assertEqual('UNDETERMINED',
                         calculator.compare_thresh(values, 'LTE', 5000))

        values = [501, 500, 4999, None]
        self.assertEqual('OK', calculator.compare_thresh(values, 'LT', 4999))
Exemplo n.º 3
0
 def _update_state():
     """Update state of a sub expr."""
     data_sub = expr_data['data'][expr.fmtd_sub_expr_str]
     data_list = data_sub['metrics']
     period = float(expr.period)
     periods = int(expr.periods)
     right = t_now
     left = right - period
     temp_data = []
     value_in_periods = []
     i = len(data_list) - 1
     while i >= 0:
         if data_list[i]['timestamp'] >= left:
             temp_data.append(float(data_list[i]['value']))
         else:
             value = calculator.calc_value(expr.normalized_func,
                                           temp_data)
             value_in_periods.append(value)
             right = left
             left = right - period
             temp_data = []
             i += 1
         i -= 1
     value = calculator.calc_value(expr.normalized_func, temp_data)
     value_in_periods.append(value)
     for i in range(len(value_in_periods), periods, 1):
         value_in_periods.append(
             calculator.calc_value(expr.normalized_func, []))
     expr_data['data'][expr.fmtd_sub_expr_str]['values'] = (
         value_in_periods)
     expr_data['data'][expr.fmtd_sub_expr_str]['state'] = (
         calculator.compare_thresh(value_in_periods,
                                   expr.normalized_operator,
                                   float(expr.threshold)))
Exemplo n.º 4
0
 def _update_state():
     """Update state of a sub expr."""
     data_sub = expr_data["data"][expr.fmtd_sub_expr_str]
     data_list = data_sub["metrics"]
     period = float(expr.period)
     periods = int(expr.periods)
     right = t_now
     left = right - period
     temp_data = []
     value_in_periods = []
     i = len(data_list) - 1
     while i >= 0:
         if data_list[i]["timestamp"] >= left:
             temp_data.append(float(data_list[i]["value"]))
         else:
             value = calculator.calc_value(expr.normalized_func, temp_data)
             value_in_periods.append(value)
             right = left
             left = right - period
             temp_data = []
             i += 1
         i -= 1
     value = calculator.calc_value(expr.normalized_func, temp_data)
     value_in_periods.append(value)
     for i in range(len(value_in_periods), periods, 1):
         value_in_periods.append(calculator.calc_value(expr.normalized_func, []))
     expr_data["data"][expr.fmtd_sub_expr_str]["values"] = value_in_periods
     expr_data["data"][expr.fmtd_sub_expr_str]["state"] = calculator.compare_thresh(
         value_in_periods, expr.normalized_operator, float(expr.threshold)
     )