文档文档

Sensu 事件处理器

Sensu 是一项服务,提供基础设施、服务和应用监控以及其他指标。Kapacitor 可以配置为向 Sensu 发送告警消息。

配置

Sensu 事件处理器的配置以及默认 选项 值在您的 kapacitor.conf 中设置。以下是一个配置示例

[sensu]
  enabled = true
  addr = "sensu-client:3030"
  source = "Kapacitor"
  handlers = ["hander1-name", "handler2-name"]

已启用

设置为 true 以启用 Sensu 事件处理器。

addr

Sensu 客户端 host:port 地址。

source

默认 “即时” (JIT) 源。

handlers

要使用的 Sensu 处理程序 列表。

选项

以下 Sensu 事件处理器选项可以在 处理程序文件 中设置,或者在使用 TICKscript 中的 .sensu() 时设置。

名称类型描述
source字符串Sensu 源,用于发布消息。
handlers字符串列表Sensu 处理程序列表。如果为空,则使用配置中的处理程序列表。
metadata键值对映射将键值对添加到 Sensu API 请求。

示例:处理程序文件

id: handler-id
topic: topic-name
kind: sensu
options:
  source: Kapacitor
  handlers:
    - handler1-name
    - handler2-name
  metadata:
    key1: value1
    key2: 5
    key3: 5.0

示例:TICKscript

|alert()
  // ...
  .sensu()
    .source('Kapacitor')
    .handlers('handler1-name', 'handler2-name')
    .metadata('key1', 'value1')
    .metadata('key2', 5)
    .metadata('key3', 5.0)

使用 Sensu 事件处理器

在您的 kapacitor.conf 中启用并配置 Sensu 事件处理器后,在您的 TICKscript 中使用 .sensu() 属性向 Sensu 发送告警,或者定义一个订阅主题并将发布的告警发送到 Sensu 的 Sensu 处理程序。

kapacitor.conf 中的 Sensu 设置

[sensu]
  enabled = true
  addr = "123.45.67.89:3030"
  source = "Kapacitor"
  handlers = ["tcp", "transport"]

从 TICKscript 向 Sensu 发送告警

以下 TICKscript 使用 .sensu() 事件处理器在空闲 CPU 使用率降至 10% 以下时,向 Sensu 发送消息 “Hey, check your CPU”。

sensu-cpu-alert.tick

stream
  |from()
    .measurement('cpu')
  |alert()
    .crit(lambda: "usage_idle" < 10)
    .message('Hey, check your CPU')
    .sensu()      

从定义的处理程序向 Sensu 发送告警

以下设置向 cpu 主题发送告警,消息为 “Hey, check your CPU”。添加了一个 Sensu 处理程序,该处理程序订阅 cpu 主题并将所有告警消息发布到 Sensu。

创建一个 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 主题并使用 Sensu 事件处理器向 Sensu 发送告警。

sensu_cpu_handler.yaml

id: sensu-cpu-alert
topic: cpu
kind: sensu
options:
  source: Kapacitor
  handlers:
    - tcp
    - transport

添加处理程序

kapacitor define-topic-handler sensu_cpu_handler.yaml

此页是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。您可以继续像现在一样使用它,而无需对代码进行任何更改。

阅读更多

现已全面上市

InfluxDB 3 Core 和 Enterprise

快速启动。更快扩展。

获取更新

InfluxDB 3 Core 是一个开源、高速、近实时数据引擎,可实时收集和处理数据,并将其持久化到本地磁盘或对象存储。InfluxDB 3 Enterprise 构建在 Core 的基础上,增加了高可用性、读取副本、增强的安全性以及数据压缩,从而实现更快的查询和优化的存储。InfluxDB 3 Enterprise 的免费层可供非商业家庭或业余爱好者使用。

有关更多信息,请查看