Commit Graph

485 Commits

Author SHA1 Message Date
Andrzej Ressel
30f048965c Merge branch 'master' into feature/discord 2018-04-08 20:09:56 +02:00
Daniel Lee
4b6fd675e2
Merge pull request #11390 from bergquist/notifiers_default_value
Default value for uploading images in alert notifiers
2018-03-28 13:06:09 +02:00
bergquist
d29563ff8e alerting: bad default state for notifiers
when we made image upload optional we didnt
show the default value properly in the UI. Which
caused confusing. This commit apply the default
values to existing notifiers in the edit pages
and reverts back to using uploadimage=true as the
default value.
2018-03-28 12:52:39 +02:00
Daniel Lee
68833fa978 dashboard: allow alerts to be saved for new/provisioned dashboards
This changes the logic for the alert validation in the extractor. Validation
is executed twice, once before attempting to save the alerts and once after
saving the dashboard while saving the alerts to the db. The first validation
will not require that the alert has a dashboard id which allows new dashboards
with alerts to be saved.

Fixes #11247
2018-03-28 11:32:05 +02:00
Thibault Chataigner
38bdb8dfb3 Alerting: move getNewState to EvalContext
This fix alert state update when several evaluation attempts are needed

Signed-off-by: Thibault Chataigner <t.chataigner@criteo.com>
2018-03-21 20:59:39 +01:00
Thibault Chataigner
5d23e7710b Alerting: Add retry mechanism and its unitests
Signed-off-by: Thibault Chataigner <t.chataigner@criteo.com>
2018-03-20 21:01:56 +01:00
Corentin Chary
3d8f1a7439 alertmanager: /Creating/Sending/ 2018-03-15 13:48:58 +01:00
Corentin Chary
c8da1a46c5 alertmanager: handle resolved alerts, nodata, and execution errors
- Resolved alerts will be sent to the AM the first time they move
  from Alerting to OK
- Errors are forwarded
- NoData is not ignored anymore
- The summary annotation is set (with the alertname)
- The image annotation is set (when available)
2018-03-15 12:02:29 +01:00
Corentin Chary
d4d2b6d7da notitfiers: avoid ShouldNotify duplication 2018-03-15 10:48:29 +01:00
Corentin Chary
777c1024c9 alertmanager: if there are no alerts to send, do nothing 2018-03-15 10:08:03 +01:00
bergquist
be7ec310b1 alerting: supports extracting alerts from collapsed panels
collapsed rows wrap the hidden rows within itself. This caused
the extractor to miss the panel and therefore delete the alert
accosiated with the graph.

closes #11222
2018-03-14 11:23:16 +01:00
Leonard Gram
87bc60b9d7 alerting: adds back the link to grafana. 2018-03-13 13:29:57 +01:00
John Baublitz
aba6f627c5 Fix CI 2018-03-13 13:29:57 +01:00
John Baublitz
89557dd67b Modify Grafana Pagerduty notifier to use Pagerduty API V2 2018-03-13 13:29:57 +01:00
Carl Bergquist
d220516664
Merge pull request #11145 from grafana/alerting-invalid-data
alerting: fixes validation error when saving alerts in dash
2018-03-07 17:06:19 +01:00
Daniel Lee
d96fbb486f alerting: fixes validation error when saving alerts in dash
If a panelId in the dashboard json is set to zero then the validation
silently fails. Instead of returning an error, it just ignores alerts and
saves the dashboard.
2018-03-07 16:20:05 +01:00
Carl Bergquist
c39e68de24
Merge pull request #11046 from llamashoes/master
Add metrics that triggered alert to description in OpsGenie.
2018-03-07 15:48:30 +01:00
Leonard Gram
891462b5d9 alerting: Limits telegram captions to 200 chars.
The caption for inline images in Telegram is
limited to 200 characters.

Fixes #10975
2018-03-06 12:38:03 +01:00
Ryan Gifford
49266d5150 Add metrics that triggered alert to description 2018-02-28 15:26:11 -07:00
Marcel Anacker
69006a7764 Alerting: Fix OK state doesn't show up in Microsoft Teams (#11032)
* Alerting: Fix OK state doesn't show up in Microsoft Teams

* Fix formatting
2018-02-27 15:48:36 +01:00
Marcus Efraimsson
53cd39fde5 Shouldn't be able to overwrite a dashboard if you don't have permissions (#10900)
* dashboards: new command for validating dashboard before update

Removes validation logic from saveDashboard and later on use the new command for validating
dashboard before saving a dashboard. This due to the fact that we need to validate permissions
for overwriting other dashboards by uid and title.

* dashboards: use the new command for validating dashboard before saving

Had to refactor dashboard provisioning a bit to be able to sidetrack the permission validation
in a somewhat reasonable way.
Adds some initial tests of the dashboard repository, but needs to be extended later. At least
now you can mock the dashboard guardian

* dashboards: removes validation logic in the save dashboard api layer

Use the dashboard repository solely for create/update dashboards and let it do all
the validation. One exception regarding quota validation which still is in api layer
since that logic is in a macaron middleware.
Need to move out-commented api tests later.

* dashboards: fix database tests for validate and saving dashboards

* dashboards: rename dashboard repository to dashboard service

Split the old dashboard repository interface in two new interfaces, IDashboardService and
IDashboardProvisioningService. Makes it more explicit when using it from the provisioning package
and there's no possibility of calling an incorrect method for saving a dashboard.

* database: make the InitTestDB function available to use from other packages

* dashboards: rename ValidateDashboardForUpdateCommand and some refactoring

* dashboards: integration tests of dashboard service

* dashboard: fix sqlstore test due to folder exist validation

* dashboards: move dashboard service integration tests to sqlstore package

Had to move it to the sqlstore package due to concurrency problems when running
against mysql and postgres. Using InitTestDB from two packages added conflicts
when clearing and running migrations on the test database

* dashboards: refactor how to find id to be used for save permission check

* dashboards: remove duplicated dashboard tests

* dashboards: cleanup dashboard service integration tests

* dashboards: handle save dashboard errors and return correct http status

* fix: remove log statement

* dashboards: import dashboard should use dashboard service

Had to move alerting commands to models package due to problems with import cycles of packages.

* dashboards: cleanup dashboard api tests and add some tests for post dashboard

* dashboards: rename dashboard service interfaces

* dashboards: rename dashboard guardian interface
2018-02-19 11:12:56 +01:00
Carl Bergquist
cc0cc8dd73 changes to new urlformat for home dashboard (#10738) 2018-02-05 10:24:48 +01:00
bergquist
992fd37010 alert: use new url format 2018-02-01 14:08:51 +01:00
Patrick O'Carroll
465e701b42 moved icon (#10681) 2018-01-31 09:52:29 +01:00
bkaganyildiz
97d969bd5c Update OpsGenie Notifier to support different api domains. 2018-01-22 22:27:35 +03:00
Matt
0dffb6dbb1 Adjusted the border color on the buttons in dashboard nav, fixed alert email text area width, fixed padding-top issue on dashboard settings aside 2018-01-18 14:40:08 +01:00
Robin Burchell
43109dc8ca telegram: Send notifications with an inline image
If image upload is enabled, but there is no public image repository,
fall back to sending an image via telegram's API.
2018-01-11 17:23:50 -05:00
Robin Burchell
b6fcf2b609 telegram: Switch to using multipart form rather than JSON as a body
This is a pre-requisite for uploading inline images.
2018-01-11 17:21:43 -05:00
Robin Burchell
a1a9f339bf telegram: Fix a typo in variable name 2018-01-11 17:21:43 -05:00
bergquist
7917efb31a pagerduty: fixes invalid default value
autoResolve incident checkbox was set to disabled by default but
the backend used enabled as default. This commit makes both use
disabled by defualt

fixes #10222
2017-12-22 10:54:48 +01:00
bergquist
e480a38dc1 pagerduty: adds test for reading auto resolve setting 2017-12-22 09:58:37 +01:00
Carl Bergquist
e2be6a38c4 pushover: update default message 2017-12-19 14:31:26 +01:00
Carl Bergquist
f36aa2e953 Merge branch 'patch-1' of https://github.com/devkid/grafana into devkid-patch-1
* 'patch-1' of https://github.com/devkid/grafana:
  Add default message for Pushover notifications
2017-12-19 14:30:09 +01:00
Carl Bergquist
644c2f7fb0 test: remove unused code 2017-12-19 11:23:21 +01:00
Carl Bergquist
66cf224e31 alerting: make alert extractor backwards compatible
closes #10270
2017-12-19 11:20:05 +01:00
Carl Bergquist
1816e89730 alerting: move test json into files 2017-12-19 10:22:26 +01:00
Torkel Ödegaard
c395237710 Merge branch Grafana v5 'develop' branch 2017-12-15 12:06:09 +01:00
Torkel Ödegaard
a7645b710d Merge remote-tracking branch 'origin/master' into develop 2017-12-13 19:18:10 +01:00
bergquist
ade734168c alertmanager: endAt should only be used if we have the correct value 2017-12-13 19:17:00 +01:00
bergquist
3691faf136 alertmanager: code style 2017-12-13 19:17:00 +01:00
bergquist
1240db31d3 alerting: reduce log level for notifiers 2017-12-13 19:17:00 +01:00
Thibault Chataigner
a8264fe316 Alertmanager notifier: add "metric" labels if no tags
Signed-off-by: Thibault Chataigner <t.chataigner@criteo.com>
2017-12-13 19:17:00 +01:00
Thibault Chataigner
3a7939c930 Alertmanager notifier: make it match the new notifier interface
Signed-off-by: Thibault Chataigner <t.chataigner@criteo.com>
2017-12-13 19:17:00 +01:00
Mitsuhiro Tanda
20d94f9703 support alertmanager 2017-12-13 19:17:00 +01:00
bergquist
bf999a4f82 fixes broken alert eval when first condition is using OR
closes #9318
2017-12-13 13:37:10 +01:00
bergquist
0b6169b3f5 removes verbose logging 2017-12-13 10:21:11 +01:00
Thibault Chataigner
fd633a1d5d Add a per-notifier ShouldNotify()
This way we are able to edit notification behavior per notifier.
This would be usefull to let some notifiers send notifications,
even when the state doesn't change, or with custom condition.

Signed-off-by: Thibault Chataigner <t.chataigner@criteo.com>
2017-12-12 17:35:54 +01:00
Alfred Krohmer
72e686457c Add default message for Pushover notifications
If the message field is left empty for Pushover notifications, the API will return an error. This adds a default message if the message would otherwise be empty.

This fixes #8006.
2017-12-11 22:14:38 +01:00
Torkel Ödegaard
beb9f8ee74 Merge remote-tracking branch 'origin/master' into develop 2017-12-07 14:14:50 +01:00
bergquist
35232a77e6 removes unused properties
the dsType property caused some confusion about what datasource is
beeing used. I just removed it since it not beeing used.

closes #10072
2017-12-05 08:26:43 +01:00