This commit removes the open and close braces from the suggestion
as braces do not make sense in the configuration file. This does
not change the behavior of the suggestion whatsoever as these
are optional.
Signed-off-by: George Robinson <george.robinson@grafana.com>
* Do not allow unquoted escape sequences
This commit updates the matchers parser to reject unquoted
openmetrics escape sequences. As an example, foo=bar\n
will no longer parse, and must instead be written as
foo="bar\n". This avoids an issue where the input is valid
in both the matchers and classic parsers, but results
in two different parsings.
---------
Signed-off-by: George Robinson <george.robinson@grafana.com>
* Update compliance tests
This commit updates compliance tests to include openmetrics
escape sequences that are not valid in the UTF-8 matchers parser.
Signed-off-by: George Robinson <george.robinson@grafana.com>
* Add tests for openmetrics escape sequences
Signed-off-by: George Robinson <george.robinson@grafana.com>
---------
Signed-off-by: George Robinson <george.robinson@grafana.com>
This commit adds debug logs to MuteStage that logs when an alert
is muted. This can help operators root cause missing notifications
when alerts are silenced by mistake or purpose but then forgotten
about.
Signed-off-by: George Robinson <george.robinson@grafana.com>
Bumps the API spec/client generation util of `go-swagger` from 0.30.2 to 0.30.5 which is the latest stable.
Signed-off-by: gotjosh <josue.abreu@gmail.com>
* Add adapter package for parser feature flag
This commit adds the compat package allowing users to switch
between the new matchers/parse parser and the old pkg/labels parser.
The new matchers/parse parser uses a fallback mechanism where if
the input cannot be parsed in the new parser it then attempts to
use the old parser. If an input is parsed in the old parser but
not the new parser, then a warning log is emitted.
---------
Signed-off-by: George Robinson <george.robinson@grafana.com>
* Move and export BuildReceiverIntegrations
Signed-off-by: Alex Weaver <weaver.alex.d@gmail.com>
---------
Signed-off-by: Alex Weaver <weaver.alex.d@gmail.com>
This commit updates Alertmanager to add a duration to the notify
success message. It complements the existing histogram to offer
fine-grained information about notification attempts. This can be
useful when debuggin duplicate notifications, for example, when
the duration exceeds peer_timeout.
Signed-off-by: George Robinson <george.robinson@grafana.com>
* Refactor: Move `inTimeIntervals` from `notify` to `timeinterval`
There's absolutely no change of functionality here and I've expanded coverage for similar logic in both places.
---------
Signed-off-by: gotjosh <josue.abreu@gmail.com>
Although it is true that Repeat interval should be greater than or
equal to the Group interval, it should also be a multiple of it too.
If the Repeat interval is not a multiple, then because of how aggregation
groups are flushed, it will be made into one implicitly. This commit
documents this behavior.
Signed-off-by: George Robinson <george.robinson@grafana.com>
* actions: cross build in ci and fix publish
Signed-off-by: Jan Fajerski <jfajersk@redhat.com>
* actions: build before release publishing
Signed-off-by: Jan Fajerski <jfajersk@redhat.com>
---------
Signed-off-by: Jan Fajerski <jfajersk@redhat.com>
* Move CI to github actions
Signed-off-by: Jan Fajerski <jfajersk@redhat.com>
* Skip email test in github action
Signed-off-by: Jan Fajerski <jfajersk@redhat.com>
* build before lint
Signed-off-by: Jan Fajerski <jfajersk@redhat.com>
---------
Signed-off-by: Jan Fajerski <jfajersk@redhat.com>
* Add tests for PromQL braces when using amtool alert
Signed-off-by: George Robinson <george.robinson@grafana.com>
---------
Signed-off-by: George Robinson <george.robinson@grafana.com>
* Add test for PromQL braces when parsing lists of matchers
Signed-off-by: George Robinson <george.robinson@grafana.com>
* Use acceptance tests
Signed-off-by: George Robinson <george.robinson@grafana.com>
* Add test creating silence with braces
Signed-off-by: George Robinson <george.robinson@grafana.com>
---------
Signed-off-by: George Robinson <george.robinson@grafana.com>
* Add receiver name as a label to notify metrics
This commit adds in a second label to the notify family of metrics
(e.g. numTotalFailedNotifications) - the receiver name. This allows
disambiguating which receiver is failing when one has many receivers
with the same integration type
Signed-off-by: sinkingpoint <colin@quirl.co.nz>
* Gate receiver names behind a feature flag
Signed-off-by: sinkingpoint <colin@quirl.co.nz>
---------
Signed-off-by: sinkingpoint <colin@quirl.co.nz>
Signed-off-by: gotjosh <josue.abreu@gmail.com>
Co-authored-by: gotjosh <josue.abreu@gmail.com>
* Fix scheme required for webhook url in amtool
This commit fixes issue #3505 where amtool would fail with
"error: scheme required for webhook url" when using amtool
with --alertmanager.url.
The issue here is that UnmarshalYaml for WebhookConfig checks
if the scheme is present when c.URL is non-nil. However,
UnmarshalYaml for SecretURL returns a non-nil, default value
url.URL{} if the response from api/v2/status contains <secret>
as the webhook URL.
Signed-off-by: George Robinson <george.robinson@grafana.com>
* Add test for config routes test
Signed-off-by: George Robinson <george.robinson@grafana.com>
---------
Signed-off-by: George Robinson <george.robinson@grafana.com>
* Define a `RELEASE.MD` for the Alertmanager Project
Will helps us get to a more regular cadance of releases.
Signed-off-by: gotjosh <josue.abreu@gmail.com>
---------
Signed-off-by: gotjosh <josue.abreu@gmail.com>
* Add label matchers parser
This commit adds the new label matchers parser as proposed in #3353.
Included is a number of compliance tests comparing the grammar
supported in the new parser with the existing parser in pkg/labels.
Signed-off-by: George Robinson <george.robinson@grafana.com>
---------
Signed-off-by: George Robinson <george.robinson@grafana.com>