VictorOps 事件处理器
VictorOps 是一个事件管理平台,提供可观测性、协作和实时警报。Kapacitor 可以配置为向 VictorOps 发送警报消息。
配置
VictorOps 事件处理器的配置以及默认 选项 值在您的 kapacitor.conf
中设置。以下是一个配置示例
[victorops]
enabled = true
api-key = "xxxx"
routing-key = "xxxx"
url = "https://alert.victorops.com/integrations/generic/20131114/alert"
json-data = false
global = false
已启用
设置为 true
以启用 VictorOps 事件处理器。
api-key
您的 VictorOps API 密钥。
routing-key
默认 VictorOps 路由密钥,可以为每个警报覆盖。
url
VictorOps API URL。这通常不需要更改。
json-data
使用 JSON 作为 “data” 字段。
新的 VictorOps 安装将希望将其设置为
true
,因为它使触发警报的数据在 VictorOps 中可用。默认值为false
,以实现向后兼容性。
global
如果为 true,则所有警报都将发送到 VictorOps,而无需在 TICKscript 中显式指定 VictorOps。路由密钥仍然可以被覆盖。
选项
以下 VictorOps 事件处理器选项可以在 处理程序文件 中设置,或者在使用 TICKscript 中的 .victorOps()
时设置。
名称 | 类型 | 描述 |
---|---|---|
routing-key | 字符串 | 警报事件的路由密钥。 |
示例:处理程序文件
id: handler-id
topic: topic-name
kind: victorops
options:
routing-key: ops_team
示例:TICKscript
|alert()
// ...
.victorOps()
.routingKey('team_rocket')
VictorOps 设置
要允许 Kapacitor 向 VictorOps 发送警报,请执行以下操作
- 在您的 VictorOps 仪表板的 “集成” 部分启用 “警报摄取 API”。
- 在您的
kapacitor.conf
的[victorops]
部分中使用提供的 API 密钥作为api-key
。
使用 VictorOps 事件处理器
在您的 kapacitor.conf
中启用和配置 VictorOps 事件处理器后,在您的 TICKscript 中使用 .victorOps()
属性向 VictorOps 发送警报,或者定义一个 VictorOps 处理程序,该处理程序订阅一个主题并将发布的警报发送到 VictorOps。
以下示例使用在 kapacitor.conf
中定义的以下 VictorOps 配置
kapacitor.conf 中的 VictorOps 设置
[victorops]
enabled = true
api-key = "mysupersecretapikey"
routing-key = "team_rocket"
url = "https://alert.victorops.com/integrations/generic/20131114/alert"
json-data = true
global = false
从 TICKscript 向 VictorOps 房间发送警报
以下 TICKscript 使用 .victorOps()
事件处理器向 VictorOps 发送消息 “嘿,检查你的 CPU”,只要空闲 CPU 使用率降至 10% 以下。
victorops-cpu-alert.tick
stream
|from()
.measurement('cpu')
|alert()
.crit(lambda: "usage_idle" < 10)
.message('Hey, check your CPU')
.victorOps()
.routingKey('team_rocket')
从定义的处理程序向 VictorOps 房间发送警报
以下设置向 cpu
主题发送警报,消息为 “嘿,检查你的 CPU”。添加了一个 VictorOps 处理程序,该处理程序订阅 cpu
主题,并使用在 kapacitor.conf
中定义的默认设置将所有警报消息发布到 VictorOps。
创建一个 TICKscript,将警报消息发布到主题。以下 TICKscript 在任何时候空闲 CPU 使用率降至 10% 以下时,都会向 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
主题,并使用 VictorOps 事件处理器向 VictorOps 发送警报。
victorops_cpu_handler.yaml
topic: cpu
id: victorops-cpu-alert
kind: victorops
options:
routing-key: 'team_rocket'
添加处理程序
kapacitor define-topic-handler victorops_cpu_handler.yaml
此页是否对您有帮助?
感谢您的反馈!