文档文档

日志事件处理器

日志事件处理器会将每个告警事件逐行写入指定的日志文件。如果指定的日志文件不存在,则会被创建。

选项

以下日志事件处理器选项可以在 处理程序文件 中设置,或在 TICKscript 中使用 .log() 时设置。

名称类型描述
pathstring日志文件的绝对路径。
modeint创建文件时使用的文件模式和权限。默认是 0600必须包含前导 0 才能将值解释为八进制整数。

示例:处理程序文件

id: handler-id
topic: topic-name
kind: log
options:
  path: '/tmp/alerts.log'
  mode: 0644

示例:TICKscript

|alert()
  // ...
  .log('/tmp/alerts.log')
    .mode(0644)

使用日志事件处理器

日志事件处理器可以在 TICKscript 和处理程序文件中使用,用于将消息记录到日志文件中。

从 TICKscript 记录消息

以下 TICKscript 使用 .log() 事件处理器,在空闲 CPU 使用率低于 10% 时,将消息记录到 /tmp/alerts.log 日志文件中。

log-cpu-alert.tick

stream
  |from()
    .measurement('cpu')
  |alert()
    .crit(lambda: "usage_idle" < 10)
    .message('{{ .Time }}: CPU usage over 90%')
    .log('/tmp/alerts.log')

从已定义的处理程序记录消息

以下设置会将告警发送到 cpu 主题,消息为“’{{ .Time }}: CPU usage over 90%’”。添加了一个日志处理程序,该处理程序订阅 cpu 主题,并在新消息发布时将消息记录到 /tmp/alerts.log

创建将警报消息发布到主题的 TICKscript。当空闲 CPU 使用率低于 10% 时,下面的 TICKscript 将警报消息发送到 cpu 主题。

cpu_alert.tick

stream
  |from()
    .measurement('cpu')
  |alert()
    .crit(lambda: "usage_idle" < 10)
    .message('{{ .Time }}: CPU usage over 90%')
    .topic('cpu')

添加并启用 TICKscript

kapacitor define cpu_alert -tick cpu_alert.tick
kapacitor enable cpu_alert

创建一个处理程序文件,该文件订阅 cpu 主题,并使用日志事件处理器将消息记录到 /tmp/alerts.log 日志文件中。

log_cpu_handler.yaml

id: log-cpu-alert
topic: cpu
kind: log
options:
  path: '/tmp/alerts.log'

添加处理器

kapacitor define-topic-handler log_cpu_handler.yaml

此页面是否有帮助?

感谢您的反馈!


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