PagerDuty v2 事件处理程序
PagerDuty 是一个事件管理平台,可帮助团队快速检测和修复基础设施问题。Kapacitor 可以配置为将警报消息发送到 PagerDuty。
此页面特定于 PagerDuty 的 v2 API。如果仍在使用其 v1 API,请查看 PagerDuty v1 事件处理程序 文档。
配置
PagerDuty v2 事件处理程序的配置以及默认 选项 值在您的 kapacitor.conf
中设置。以下是一个配置示例
[pagerduty2]
enabled = true
routing-key = ""
url = "https://events.pagerduty.com/v2/enqueue"
global = false
enabled
设置为 true
以启用 PagerDuty v2 事件处理程序。
routing-key
您的 PagerDuty 路由密钥。
url
PagerDuty API v2 URL。这应该不需要更改。
global
如果 true
,所有警报都将发送到 PagerDuty,而无需在 TICKscript 中显式指定 PagerDuty。
选项
以下 PagerDuty v2 事件处理程序选项可以在 处理程序文件 中设置,或者在使用 TICKscript 中的 .pagerDuty2()
时设置。
名称 | 类型 | 描述 |
---|---|---|
routing-key | string | 用于警报的 PagerDuty 路由密钥。 |
link | strings | 放置在发送到 PagerDuty API 的正文的 links 字段中的自定义链接。 |
示例:处理程序文件
id: handler-id
topic: topic-name
kind: pagerduty2
options:
routing-key: 'myroutingkey'
links:
- href: 'https://chronograf.example.com/sources/1/dashboards/2'
text: 'Overview Dashboard'
- href: 'https://chronograf.example.com/'
示例:TICKscript
|alert()
// ...
.pagerDuty2()
.routingKey('myroutingkey')
.link('https://chronograf.example.com/sources/1/dashboards/2', 'Overview Dashboard')
.link('https://chronograf.example.com/')
PagerDuty 设置
要允许 Kapacitor 将警报发送到 PagerDuty,请 启用新的“通用 API”集成。使用生成的“集成密钥”作为 kapacitor.conf
的 [pagerduty2]
部分下的 routing-key
。
使用 PagerDuty v2 事件处理程序
在您的 kapacitor.conf
中启用 PagerDuty v2 事件处理程序后,在您的 TICKscript 中使用 .pagerDuty2()
属性将警报发送到 PagerDuty,或定义一个订阅主题并将已发布警报发送到 PagerDuty 的 PagerDuty v2 处理程序。
以下示例使用在 kapacitor.conf
中定义的以下 PagerDuty v2 配置
kapacitor.conf 中的 PagerDuty v2 设置
[pagerduty2]
enabled = true
routing-key = "myroutingkey"
url = "https://events.pagerduty.com/v2/enqueue"
global = false
从 TICKscript 向 PagerDuty 发送警报
以下 TICKscript 使用 .pagerDuty2()
事件处理程序在空闲 CPU 使用率降至 10% 以下时发送消息“嘿,检查你的 CPU”。
pagerduty2-cpu-alert.tick
stream
|from()
.measurement('cpu')
|alert()
.crit(lambda: "usage_idle" < 10)
.message('Hey, check your CPU')
.pagerDuty2()
从定义的处理程序向 PagerDuty 发送警报
以下设置向 cpu
主题发送警报,消息为“嘿,检查你的 CPU”。添加了一个 PagerDuty v2 处理程序,该处理程序订阅 cpu
主题并将所有警报消息发布到 PagerDuty。
创建一个 TICKscript,将警报消息发布到主题。以下 TICKscript 在 CPU 空闲使用率降至 10% 以下(或 CPU 使用率高于 90%)时,向 cpu
主题发送警报消息。
cpu_alert.tick
stream
|from()
.measurement('cpu')
|alert()
.crit(lambda: "usage_idle" < 10)
.message('Hey, check your CPU')
.topic('cpu')
添加并启用 TICKscript
kapacitor define cpu_alert -tick cpu_alert.tick
kapacitor enable cpu_alert
创建一个处理程序文件,该文件订阅 cpu
主题并使用 PagerDuty v2 事件处理程序将警报发送到 PagerDuty。
pagerduty2_cpu_handler.yaml
topic: cpu
id: pagerduty2-cpu-alert
kind: pagerduty2
options:
routing-key: 'myroutingkey'
添加处理程序
kapacitor define-topic-handler pagerduty2_cpu_handler.yaml
此页内容是否对您有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一份子!我们欢迎并鼓励您提供关于 Kapacitor 和此文档的反馈和错误报告。要获得支持,请使用以下资源