Compare commits

...

2 Commits

Author SHA1 Message Date
Srikanth Chekuri
cc07d654d1 chore: adjust time 2023-06-29 04:56:56 +05:30
Srikanth Chekuri
a4c4d4fd75 chore: add more debug logs 2023-06-28 18:41:59 +05:30

View File

@@ -22,7 +22,6 @@ import (
querytemplate "go.signoz.io/signoz/pkg/query-service/utils/queryTemplate"
"go.signoz.io/signoz/pkg/query-service/utils/times"
"go.signoz.io/signoz/pkg/query-service/utils/timestamp"
"go.signoz.io/signoz/pkg/query-service/utils/value"
logsv3 "go.signoz.io/signoz/pkg/query-service/app/logs/v3"
metricsv3 "go.signoz.io/signoz/pkg/query-service/app/metrics/v3"
@@ -327,7 +326,7 @@ func (r *ThresholdRule) SendAlerts(ctx context.Context, ts time.Time, resendDela
}
func (r *ThresholdRule) CheckCondition(v float64) bool {
if value.IsNaN(v) {
if math.IsNaN(v) {
zap.S().Debugf("msg:", "found NaN in rule condition", "\t rule name:", r.Name())
return false
}
@@ -354,22 +353,33 @@ func (r *ThresholdRule) CheckCondition(v float64) bool {
func (r *ThresholdRule) prepareQueryRange(ts time.Time) *v3.QueryRangeParamsV3 {
// todo(amol): add 30 seconds to evalWindow for rate calc
start := ts.Add(-time.Duration(r.evalWindow)).UnixMilli() - 2*60*1000
end := ts.UnixMilli() - 2*60*1000
start = start - (start % (60 * 1000))
end = end - (end % (60 * 1000))
if r.ruleCondition.QueryType() == v3.QueryTypeClickHouseSQL {
return &v3.QueryRangeParamsV3{
Start: ts.Add(-time.Duration(r.evalWindow)).UnixMilli(),
End: ts.UnixMilli(),
Step: 30,
Start: start,
End: end,
Step: 60,
CompositeQuery: r.ruleCondition.CompositeQuery,
Variables: make(map[string]interface{}, 0),
}
}
if r.ruleCondition.CompositeQuery != nil && r.ruleCondition.CompositeQuery.BuilderQueries != nil {
for _, q := range r.ruleCondition.CompositeQuery.BuilderQueries {
q.StepInterval = 60
}
}
// default mode
return &v3.QueryRangeParamsV3{
Start: ts.Add(-time.Duration(r.evalWindow)).UnixMilli(),
End: ts.UnixMilli(),
Step: 30,
Start: start,
End: end,
Step: 60,
CompositeQuery: r.ruleCondition.CompositeQuery,
}
}
@@ -476,9 +486,10 @@ func (r *ThresholdRule) runChQuery(ctx context.Context, db clickhouse.Conn, quer
}
}
if value.IsNaN(sample.Point.V) {
if math.IsNaN(sample.Point.V) {
continue
}
zap.S().Infof("ruleid: %s, sample value %.6f, labels %s with hash %s", r.ID(), sample.Point.V, lbls.Labels(), lbls.Labels().Hash())
// capture lables in result
sample.Metric = lbls.Labels()
@@ -545,6 +556,9 @@ func (r *ThresholdRule) runChQuery(ctx context.Context, db clickhouse.Conn, quer
result = append(result, sample)
}
}
if len(result) != 0 {
zap.S().Infof("For rule %s, with ClickHouseQuery %s, found %d alerts", r.ID(), query, len(result))
}
zap.S().Debugf("ruleid:", r.ID(), "\t result (found alerts):", len(result))
return result, nil
}