文档文档

Kapacitor 事件处理器

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

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

配置事件处理器

大多数事件处理器必需的和默认的配置选项都在 Kapacitor 配置文件 kapacitor.conf 中进行配置。默认位置是 /etc/kapacitor/kapacitor.conf,但根据您的 Kapacitor 设置,可能会有所不同。

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

添加和使用事件处理器

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

使用处理器文件创建主题处理器

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

处理器文件包含以下内容:

* 必需
  • * ID:处理器的唯一 ID。
  • * Topic:处理器订阅的主题。
  • Match:用于过滤匹配警报的 lambda 表达式。默认情况下,所有警报都匹配。了解有关匹配表达式的更多信息。
  • * Kind:处理器的种类。
  • Options:由处理器种类决定的可配置选项。如果未提供,则使用在 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 中使用处理器

许多事件处理器可以直接在 TICKscripts 中使用以发送事件。这通常用于将消息发送到第三方的处理器。下面是一个使用 .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 属性仅在警报状态更改时才将事件发送到处理器。


此页面是否有帮助?

感谢您的反馈!


InfluxDB 3.8 新特性

InfluxDB 3.8 和 InfluxDB 3 Explorer 1.6 的主要增强功能。

查看博客文章

InfluxDB 3.8 现已适用于 Core 和 Enterprise 版本,同时发布了 InfluxDB 3 Explorer UI 的 1.6 版本。本次发布着重于操作成熟度,以及如何更轻松地部署、管理和可靠地运行 InfluxDB。

更多信息,请查看

InfluxDB Docker 的 latest 标签将指向 InfluxDB 3 Core

在 **2026 年 2 月 3 日**,InfluxDB Docker 镜像的 latest 标签将指向 InfluxDB 3 Core。为避免意外升级,请在您的 Docker 部署中使用特定的版本标签。

如果使用 Docker 来安装和运行 InfluxDB,latest 标签将指向 InfluxDB 3 Core。为避免意外升级,请在您的 Docker 部署中使用特定的版本标签。例如,如果使用 Docker 运行 InfluxDB v2,请将 latest 版本标签替换为 Docker pull 命令中的特定版本标签 — 例如

docker pull influxdb:2