文档文档

Kapacitor 事件处理程序

Kapacitor 可以通过将警报消息发送到受支持的事件处理程序来集成到监控系统中。目前,Kapacitor 可以将警报消息发送到特定的日志文件和特定的 URL,以及许多第三方应用程序。

这些文档概述了官方支持的 Kapacitor 事件处理程序的配置选项、设置说明、处理程序文件TICKscript 语法。

配置事件处理程序

大多数事件处理程序的必需和默认配置选项都在您的 Kapacitor 配置文件 kapacitor.conf 中配置。默认位置为 /etc/kapacitor/kapacitor.conf,但可能因您的 Kapacitor 设置而异。

许多事件处理程序提供可以在 TICKscript 或处理程序文件中定义的选项,而有些只能在处理程序文件中配置。这些可配置选项在每个处理程序的文档中都有概述。

添加和使用事件处理程序

如果适用,在您的 kapacitor.conf 中启用事件处理程序。启用后,执行以下操作之一

使用处理程序文件创建主题处理程序

事件处理程序文件是一个简单的 YAML 或 JSON 文件,其中包含有关处理程序的信息。虽然可以在 TICKscript 中添加许多处理程序,但在 TICKscript 中管理多个处理程序可能会很麻烦。处理程序文件允许您在 TICKscript 之外添加和使用处理程序。对于某些处理程序类型,使用处理程序文件是唯一的选择。

处理程序文件包含以下内容

* 必需
  • * ID:处理程序的唯一 ID。
  • * 主题:处理程序订阅的主题。
  • 匹配:用于过滤匹配警报的 lambda 表达式。默认情况下,所有警报都匹配。了解更多关于匹配表达式的信息。
  • * 类型:处理程序的类型。
  • 选项:由处理程序类型确定的可配置选项。如果未提供任何选项,则使用在 kapacitor.conf 中为处理程序定义的默认值。
id: handler-id
topic: topic-name
match: changed()
kind: slack
options:
  channel: '#oh-nos'

添加处理程序

使用 Kapacitor CLI 和处理程序文件定义新的处理程序

# Syntax
kapacitor define-topic-handler <handler-file-name>

# Example
kapacitor define-topic-handler slack_cpu_handler.yaml

在 TICKscript 中使用处理程序

许多事件处理程序可以直接在 TICKscript 中使用以发送事件。这通常通过将消息发送到第三方的处理程序来完成。以下是使用 .slack() 事件处理程序将 CPU 警报发布到 Slack 的 TICKscript 示例

stream
  |from()
    .measurement('cpu')
  |alert()
    .crit(lambda: "idle_usage" < 10)
    .message('You better check your CPU usage.')
    .slack()

如果警报处于“OK”以外的状态,或者警报刚刚从非“OK”状态变为“OK”状态(警报已恢复),则事件将发送到处理程序。仅当警报状态更改时才将事件发送到处理程序,请使用 AlertNode.StateChangesOnly 属性。


此页面是否对您有帮助?

感谢您的反馈!


Flux 的未来

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

阅读更多

InfluxDB 3 开源版现已公开发布 Alpha 版

InfluxDB 3 开源版现已可用于 Alpha 测试,根据 MIT 或 Apache 2 许可获得许可。

我们正在发布两个产品作为 Alpha 版的一部分。

InfluxDB 3 Core 是我们新的开源产品。它是用于时间序列和事件数据的最新数据引擎。InfluxDB 3 Enterprise 是一个商业版本,它建立在 Core 的基础上,增加了历史查询功能、读取副本、高可用性、可扩展性和细粒度的安全性。

有关如何开始使用的更多信息,请查看