文档文档

日志事件处理器

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

选项

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

名称类型描述
path (路径)string (字符串)日志文件的绝对路径。
mode (模式)int (整数)创建文件时使用的文件模式和权限。默认为 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() 事件处理器将消息记录到 /tmp/alerts.log 日志文件中,每当空闲 CPU 使用率降至 10% 以下时。

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 使用率超过 90%’”。添加了一个日志处理器,它订阅 cpu 主题,并在每次发布新消息时将消息记录到 /tmp/alerts.log 中。

创建一个 TICKscript,将告警消息发布到主题。下面的 TICKscript 在任何时候空闲 CPU 使用率降至 10% 以下时,都会向 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

此页是否对您有帮助?

感谢您的反馈!


Flux 的未来

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

阅读更多

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

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

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

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

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