使用Bosun
时,您可以使用指定json正文的警报通知发送HTTP POST
请求,如下所示:
post = myurl
body = {"foo": "bar"}
我有一个外部应用程序,它会监听myurl
并根据帖子正文的上下文发送和发送电子邮件。有没有办法对帖子正文进行一般模板化以表示触发的警报详细信息。
理想情况是这样的(语法仅用于示例目的):
post = myurl
body = {"body": "Alert.name, Alert.host, ..."}
答案 0 :(得分:2)
您想要的是在post
的定义中使用notification
操作。您还可以使用通知中的body
指令覆盖默认的帖子正文。然后,您可以使用json
模板函数和contentType
将其设置为JSON。
来自notification documentation的两个例子。特别是,我认为第二个例子就是你所追求的。
# post to a slack.com chatroom
notification slack{
post = https://company.slack.com/services/hooks/incoming-webhook?token=TOKEN
body = payload={"username": "bosun", "text": {{.|json}}, "icon_url": "http://stackexchange.github.io/bosun/public/bosun-logo-mark.svg"}
}
#post json
notification json{
post = https://someurl.com/submit
body = {"text": {{.|json}}, apiKey="2847abc23"}
contentType = application/json
}