layout | parent | grand_parent |
---|---|---|
default |
Checks |
Documentation |
This check enforces use of a comparison operator in alert queries.
Any result returned by alerting rule query will trigger an alert, so it's
recommended for all alert queries to have some condition errors > 10
, so we
only get errors
series if the value is above 10.
If we would remove > 10
part query would always return errors
and so it
would always trigger an alert, even when errors
value is 0
.
In some cases time series or specific label values will only be exported to
Prometheus under some conditions, for example http_responses_total{code="504"}
might only be exported if there's at least one 504 error observed.
This means that an alert with a query http_responses_total{code="504"}
might
work perfectly fine, since in practice we'll never have this specific time
series in Prometheus with zero value.
But this setup is fragile and unpredictable, so it's highly recommended to
have always set conditions on alerts, especially that adding > 0
shouldn't
have any negative side effects.
This check doesn't have any configuration options.
This check is enabled by default.
You can disable this check globally by adding this config block:
checks {
disabled = ["alerts/comparison"]
}
You can also disable it for all rules inside given file by adding a comment anywhere in that file. Example:
# pint file/disable alerts/comparison
Or you can disable it per rule by adding a comment to it. Example:
# pint disable alerts/comparison
You can disable this check until given time by adding a comment to it. Example:
# pint snooze $TIMESTAMP alerts/comparison
Where $TIMESTAMP
is either use RFC3339
formatted or YYYY-MM-DD
.
Adding this comment will disable alerts/comparison
until $TIMESTAMP
, after that
check will be re-enabled.