diff --git a/checker/rule.go b/checker/rule.go index 0844242..85d1e5f 100644 --- a/checker/rule.go +++ b/checker/rule.go @@ -98,6 +98,7 @@ func (r *singleCheckRule) Evaluate(ctx context.Context, obs sdk.ObservationGette status := sdk.StatusOK var summaryParts []string failingServers := make([]map[string]string, 0) + checked := false for _, srv := range report.Servers { item, found := findCheck(srv.Checks, r.checkName) @@ -113,6 +114,8 @@ func (r *singleCheckRule) Evaluate(ctx context.Context, obs sdk.ObservationGette continue } + checked = true + if item.OK { summaryParts = append(summaryParts, fmt.Sprintf("%s: OK", serverLabel(srv))) continue @@ -129,6 +132,10 @@ func (r *singleCheckRule) Evaluate(ctx context.Context, obs sdk.ObservationGette }) } + if !checked { + status = sdk.StatusUnknown + } + return sdk.CheckState{ Status: status, Message: strings.Join(summaryParts, " | "),