|
@@ -23,6 +23,7 @@ type QueryCondition struct {
|
|
|
Query AlertQuery
|
|
Query AlertQuery
|
|
|
Reducer QueryReducer
|
|
Reducer QueryReducer
|
|
|
Evaluator AlertEvaluator
|
|
Evaluator AlertEvaluator
|
|
|
|
|
+ Operator string
|
|
|
HandleRequest tsdb.HandleRequestFunc
|
|
HandleRequest tsdb.HandleRequestFunc
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -72,6 +73,7 @@ func (c *QueryCondition) Eval(context *alerting.EvalContext) (*alerting.Conditio
|
|
|
return &alerting.ConditionResult{
|
|
return &alerting.ConditionResult{
|
|
|
Firing: evalMatchCount > 0,
|
|
Firing: evalMatchCount > 0,
|
|
|
NoDataFound: emptySerieCount == len(seriesList),
|
|
NoDataFound: emptySerieCount == len(seriesList),
|
|
|
|
|
+ Operator: c.Operator,
|
|
|
EvalMatches: matches,
|
|
EvalMatches: matches,
|
|
|
}, nil
|
|
}, nil
|
|
|
}
|
|
}
|
|
@@ -168,8 +170,12 @@ func NewQueryCondition(model *simplejson.Json, index int) (*QueryCondition, erro
|
|
|
if err != nil {
|
|
if err != nil {
|
|
|
return nil, err
|
|
return nil, err
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
condition.Evaluator = evaluator
|
|
condition.Evaluator = evaluator
|
|
|
|
|
+
|
|
|
|
|
+ operatorJson := model.Get("operator")
|
|
|
|
|
+ operator := operatorJson.Get("type").MustString()
|
|
|
|
|
+ condition.Operator = operator
|
|
|
|
|
+
|
|
|
return &condition, nil
|
|
return &condition, nil
|
|
|
}
|
|
}
|
|
|
|
|
|