Browse Source

Remove unneeded state modifications

Signed-off-by: Levi Harrison <git@leviharrison.dev>
pull/9231/head
Levi Harrison 3 years ago
parent
commit
8c29046ab2
No known key found for this signature in database
GPG Key ID: 23A7BDEAE860B57D
  1. 13
      rules/alerting.go
  2. 2
      rules/manager.go
  3. 7
      rules/recording.go

13
rules/alerting.go

@ -300,8 +300,6 @@ const resolvedRetention = 15 * time.Minute
func (r *AlertingRule) Eval(ctx context.Context, ts time.Time, query QueryFunc, externalURL *url.URL) (promql.Vector, error) {
res, err := query(ctx, r.vector.String(), ts)
if err != nil {
r.SetHealth(HealthBad)
r.SetLastError(err)
return nil, err
}
@ -366,12 +364,7 @@ func (r *AlertingRule) Eval(ctx context.Context, ts time.Time, query QueryFunc,
resultFPs[h] = struct{}{}
if _, ok := alerts[h]; ok {
err = fmt.Errorf("vector contains metrics with the same labelset after applying alert labels")
// We have already acquired the lock above hence using SetHealth and
// SetLastError will deadlock.
r.health = HealthBad
r.lastError = err
return nil, err
return nil, fmt.Errorf("vector contains metrics with the same labelset after applying alert labels")
}
alerts[h] = &Alert{
@ -421,10 +414,6 @@ func (r *AlertingRule) Eval(ctx context.Context, ts time.Time, query QueryFunc,
}
}
// We have already acquired the lock above hence using SetHealth and
// SetLastError will deadlock.
r.health = HealthGood
r.lastError = err
return vec, nil
}

2
rules/manager.go

@ -604,6 +604,8 @@ func (g *Group) Eval(ctx context.Context, ts time.Time) {
}
return
}
rule.SetHealth(HealthGood)
rule.SetLastError(nil)
samplesTotal += float64(len(vector))
if ar, ok := rule.(*AlertingRule); ok {

7
rules/recording.go

@ -96,14 +96,9 @@ func (rule *RecordingRule) Eval(ctx context.Context, ts time.Time, query QueryFu
// Check that the rule does not produce identical metrics after applying
// labels.
if vector.ContainsSameLabelset() {
err = fmt.Errorf("vector contains metrics with the same labelset after applying rule labels")
rule.SetHealth(HealthBad)
rule.SetLastError(err)
return nil, err
return nil, fmt.Errorf("vector contains metrics with the same labelset after applying rule labels")
}
rule.SetHealth(HealthGood)
rule.SetLastError(err)
return vector, nil
}

Loading…
Cancel
Save