Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
nexpie-grafana-theme
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Registry
Registry
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Kornkitt Poolsup
nexpie-grafana-theme
Commits
6a20c28c
Commit
6a20c28c
authored
Oct 05, 2017
by
Carl Bergquist
Committed by
GitHub
Oct 05, 2017
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #9399 from cglrkn/master
Update script to make it use OpsGenie's REST API
parents
e4541a7f
5a3f3252
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
12 additions
and
7 deletions
+12
-7
pkg/services/alerting/notifiers/opsgenie.go
+12
-7
No files found.
pkg/services/alerting/notifiers/opsgenie.go
View file @
6a20c28c
...
...
@@ -37,8 +37,7 @@ func init() {
}
var
(
opsgenieCreateAlertURL
string
=
"https://api.opsgenie.com/v1/json/alert"
opsgenieCloseAlertURL
string
=
"https://api.opsgenie.com/v1/json/alert/close"
opsgenieAlertURL
string
=
"https://api.opsgenie.com/v2/alerts"
)
func
NewOpsGenieNotifier
(
model
*
m
.
AlertNotification
)
(
alerting
.
Notifier
,
error
)
{
...
...
@@ -87,7 +86,6 @@ func (this *OpsGenieNotifier) createAlert(evalContext *alerting.EvalContext) err
}
bodyJSON
:=
simplejson
.
New
()
bodyJSON
.
Set
(
"apiKey"
,
this
.
ApiKey
)
bodyJSON
.
Set
(
"message"
,
evalContext
.
Rule
.
Name
)
bodyJSON
.
Set
(
"source"
,
"Grafana"
)
bodyJSON
.
Set
(
"alias"
,
"alertId-"
+
strconv
.
FormatInt
(
evalContext
.
Rule
.
Id
,
10
))
...
...
@@ -103,9 +101,13 @@ func (this *OpsGenieNotifier) createAlert(evalContext *alerting.EvalContext) err
body
,
_
:=
bodyJSON
.
MarshalJSON
()
cmd
:=
&
m
.
SendWebhookSync
{
Url
:
opsgenie
Create
AlertURL
,
Url
:
opsgenieAlertURL
,
Body
:
string
(
body
),
HttpMethod
:
"POST"
,
HttpHeader
:
map
[
string
]
string
{
"Content-Type"
:
"application/json"
,
"Authorization"
:
fmt
.
Sprintf
(
"GenieKey %s"
,
this
.
ApiKey
),
},
}
if
err
:=
bus
.
DispatchCtx
(
evalContext
.
Ctx
,
cmd
);
err
!=
nil
{
...
...
@@ -119,14 +121,17 @@ func (this *OpsGenieNotifier) closeAlert(evalContext *alerting.EvalContext) erro
this
.
log
.
Info
(
"Closing OpsGenie alert"
,
"ruleId"
,
evalContext
.
Rule
.
Id
,
"notification"
,
this
.
Name
)
bodyJSON
:=
simplejson
.
New
()
bodyJSON
.
Set
(
"apiKey"
,
this
.
ApiKey
)
bodyJSON
.
Set
(
"alias"
,
"alertId-"
+
strconv
.
FormatInt
(
evalContext
.
Rule
.
Id
,
10
))
bodyJSON
.
Set
(
"source"
,
"Grafana"
)
body
,
_
:=
bodyJSON
.
MarshalJSON
()
cmd
:=
&
m
.
SendWebhookSync
{
Url
:
opsgenieCloseAlertURL
,
Url
:
fmt
.
Sprintf
(
"%s/alertId-%d/close?identifierType=alias"
,
opsgenieAlertURL
,
evalContext
.
Rule
.
Id
)
,
Body
:
string
(
body
),
HttpMethod
:
"POST"
,
HttpHeader
:
map
[
string
]
string
{
"Content-Type"
:
"application/json"
,
"Authorization"
:
fmt
.
Sprintf
(
"GenieKey %s"
,
this
.
ApiKey
),
},
}
if
err
:=
bus
.
DispatchCtx
(
evalContext
.
Ctx
,
cmd
);
err
!=
nil
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment