文档文档

Kapacitor 发行说明

v1.7.6

功能

  • Kafka Handler 设置和发送 SASL 扩展。
  • Kafka Handler SASL OAUTH 令牌刷新。

错误修复

  • 使用 UTC 时区进行警报级别。

依赖项更新

  • 将 Go 升级到 1.22.7。

v1.7.5

依赖项更新

  • 将 Go 升级到 1.21.10。

v1.7.4

依赖项更新

  • aws-sdk-go 升级到 1.51.12。
  • 将 Go 升级到 1.21.9。
  • golang.org/x/net 从 0.17.0 升级到 0.23.0。

v1.7.3

错误修复

  • 不迁移 ID 为空的事件。

其他

  • 将 Go 升级到 1.21.8
  • google.golang.org/protobuf 升级到 1.33.0
  • github.com/docker/docker 升级到 24.0.9

v1.7.2

  • 将 Go 升级到 1.20.13
  • google.golang.org/grpc 升级到 1.56.3
  • github.com/docker/docker 升级到 24.0.7

v1.7.1

错误修复

  • 安全修复:(CVE-2023-44487:HTTP/2 快速重置攻击)

v1.7.0

功能

  • 更新主题存储以允许增量更新。

v1.6.6

功能

  • 使用 [auth] meta-internal-shared-secret 配置参数添加 JWT 元 API 身份验证。

错误修复

  • 通过实现 WritePointsPrivileged 来支持 InfluxDB 1.9.6 和 OpenTSB

v1.6.5

功能

  • TICKScript lambda 生成随机数的能力。
  • 更新 InfluxQL 以实现 v.1.9.x 兼容性。

错误修复

  • 更新 Kafka 客户端以修复有关写入延迟的错误。
  • 更新到 Flux v0.171.0 以修复“interface {} is nil, not string”问题。

v1.6.4

功能

  • Kafka 警报添加 SASL 支持。

错误修复

  • 完全弃用基于 DES 的密码、基于 RC4 的密码以及 TLS 1.1 和 1.0 密码。
  • 调整注入的 Flux 依赖项,以便可以毫无问题地下载大型数据集。

v1.6.3

功能

  • Alerta 事件处理程序中添加对自定义 attributes 字段的支持。
  • BigPanda 事件处理程序添加 hostattribute 选项
    • host:标识导致警报的主对象。
    • attribute:向警报有效负载添加其他属性。
  • 向 BigPanda 节点添加新的 auto-attributes 配置选项。
  • 能够直接在 env var 配置中向 HTTP Post 添加新标头。
  • Topic queue length 现在可配置。这允许您在 Kapacitor 配置文件的 alert 部分中设置 topic-buffer-length 参数。默认值为 5000。最小长度为 1000。
  • 向电子邮件警报添加新的 address template。电子邮件地址不再需要硬编码;可以直接从数据派生。

错误修复

  • 弃用的密码被标识为响应 sweet32 攻击的“弱”密码。
  • 向错误消息 missing flux data 添加更多详细信息。当在批处理 TICKscript 中运行 Flux 查询时出现问题时,会生成此错误。

v1.6.2

功能

  • GET /kapacitor/v1/tasks 请求响应添加 template-id 属性。添加此属性有助于识别从 template 创建的任务。
  • 对于警报模板、行模板和详细信息模板,通过压缩模板中的 json,为拒绝标准 json(以换行符结尾)的第三方服务添加支持。为此,请在模板中将 {{ json . }} 替换为 {{ jsonCompact . }}。(此更改还会压缩 Big Panda 警报详细信息,以避免 Panda 服务错误。)

错误修复

  • 实现 expvar 字符串 json 编码以正确处理度量字符串中的特殊字符,感谢 @prashanthjbabu!
  • Kapacitor 配置文件 的 InfluxDB 部分中将 disable-subscriptions 设置为 true 时,正确验证连接的 InfluxDB 实例是否正在运行。如果 InfluxDB 不可用,Kapacitor 将不会启动。
  • 更新 jwt 依赖项并切换到 github.com/golang-jwt/jwt 以修复 CVE-2020-26160 漏洞
  • 切换任务服务以使用保留注释的 Flux 格式化程序。

v1.6.1

功能

  • 添加标志以限制某些事件处理程序和节点的 CIDR 范围。
  • 添加标志以禁用其他安全性的警报处理程序(例如在共享计算机上禁用 exec 警报处理程序)。

错误修复

  • 使 DeleteGroupMessageGroupInfo 接口对齐。
  • 修复 BigPanda 的有效负载序列化。

v1.6.0

Kapacitor 1.6.0 包括一个缺陷,可能会导致内存泄漏并暴露敏感信息。如果您安装了此版本,请升级到 Kapacitor v1.6.1

Kapacitor 1.6 引入了 Flux 任务支持。使用 Flux 任务来计划和运行针对 InfluxDB 1.x 数据库的 Flux 任务,或从 InfluxDB(1.x、2.x 和 Cloud)卸载 Flux 查询负载。有关更多信息,请参阅 使用 Flux 任务

用户身份验证和授权(以前仅在 Kapacitor Enterprise 中受支持)现在在 Kapacitor 1.6 中可用。与 Kapacitor API 交互需要用户身份验证。

重大更改

Kapacitor 1.6+ 不再支持 32 位操作系统。如果您使用的是 32 位操作系统,请继续使用 Kapacitor 1.5.x。

功能

错误修复

  • 修复启用调试模式时 scraper 处理程序中的 panic。

v1.5.9

功能

新的事件处理程序

新的配置选项

SideLoadNode 中对 HTTP 源的支持

  • SideloadNode 配置中添加对 HTTP sources 的支持,感谢 @jregovic!

性能和安全性改进

  • 添加 InfluxDB subscription-path 选项,以允许 Kapacitor 在反向代理后面运行,感谢 @aspring!有关更多信息,请参阅 通过 HTTP API 的 Kapacitor 到 InfluxDB TLS 配置 中的示例。
  • 默认情况下,以 gzip 压缩的形式将数据发送到 InfluxDB。尽管此默认配置未出现在 Kapacitor 配置文件中,但您可以将 compression = "none" 添加到 Kapacitor 配置文件的 InfluxDB 部分
  • 预分配 GroupIDs 以通过减少分配来提高性能。

各种事件更新

  • eventActionresolve 时,将完整事件有效负载发送到 Pagerduty,感谢 @asvinours!
  • Microsoft Teams 警报添加默认颜色主题,感谢 @NoamShaish!
  • FlattenNode 添加屏障处理,以确保成功发出点。

错误修复

  • 确保使用 influx gzip 进行的大型批处理写入已完全写入 InfluxDB。
  • 更新函数节点名称 ServiceNow 处理程序为 camelcase。
  • 修复 JoinNodeUnionNode 中的内存泄漏。
  • 避免在关闭 Kafka 写入器时无限挂起,并防止通过 http 更新 Kafka 配置文件 (kapacitor.conf) 时发生的超时错误。
  • 删除对 darwin/386 构建的支持(Go 不再支持)。
  • 将警报处理程序匹配函数 duration() 重命名为 alertDuration(),以避免与同名的类型转换函数发生名称冲突。

v1.5.8

如果您已安装此版本,请尽快回滚到 v1.5.7。此版本引入了一个缺陷,其中大型批处理任务将不会完全将所有点写回 InfluxDB。这主要影响将信息写入另一个保留策略的下采样任务。如果源保留策略很短,则源数据可能会老化,并且下采样可能从未完全写入。


v1.5.7

功能

  • 添加 .recoveryaction() 方法以支持在 TICKscript 中覆盖 OpsGenieV2 警报恢复操作,感谢 @zabullet!
  • httpPost 节点alert 节点中添加对模板 URL 的支持。设置模板
  • 升级 github.com/gorhill/cronexpr,感谢 @wuguanyu!
  • 添加 ServiceNow 事件处理程序以支持 ServiceNow 集成并提供代理支持。

错误修复

  • 当系统无法读取重播文件时添加错误检查,感谢 @johncming!
  • 向警报模板添加缺少的 .Details

v1.5.6

功能

错误修复

  • 修复 UDF 代理 Python 3.0 问题,感谢 @elohmeier!
  • 添加 scraper_test 包以修复发现服务丢失配置 (discovery.Config),感谢 @flisky!
  • systemd 用于 Amazon Linux 2。
  • 更正 .hooks/pre-commit 文件中 go vet 调用导致挂钩失败的问题,感谢 @mattnotmitt!
  • 更新 build.py 以支持 arm64,感谢 @povlhp!
  • 修复为 ticker 设置零间隔时发生的 panic,这会影响 deadman 和 stats 节点。
  • 修复 int 除以零时的 panic,并返回错误。
  • 修复导致 Kapacitor 忽略 pushover().userKey('') TICKScript 操作的问题。

v1.5.5

重大更改

  • 更新发布校验和(用于验证发布位是否已被篡改),从 MD5(消息摘要,128 位摘要)到 SHA-256(安全哈希算法 2,256 位摘要)。

错误修复

  • 更新 Kafka 客户端以确保将错误添加到 Kapacitor 日志。

v1.5.4

功能

  • 添加在指定 MQTT(消息队列遥测传输)主题时使用模板的功能。
  • 升级以支持用户定义的函数 (UDF) 的 Python 3.0。

错误修复

  • 升级 Kafka 库以正确设置时间戳。
  • 升级到 Go 1.13,修复各种 go vet 问题。

v1.5.3

身份验证和共享密钥

如果使用 Kapacitor v1.5.3 或更高版本以及启用 身份验证 的 InfluxDB,请在 kapacitor.conf 中设置 [http].shared-secret 选项为 InfluxDB 实例的共享密钥。

# ...
[http]
  # ...
  shared-secret = "youramazingsharedsecret"

如果未设置,设置为空字符串,或者与 InfluxDB 的共享密钥不匹配,则与 InfluxDB 的集成将失败,并且 Kapacitor 将不会启动。Kapacitor 将输出类似于以下的错误

kapacitord[4313]: run: open server: open service *influxdb.Service: failed to link subscription on startup: signature is invalid

重要更新

  • 一些客户报告了大量 CLOSE_WAIT 连接。升级到此版本以解决此问题。

功能

  • 添加使用警报 post 节点跳过 SSL 验证的功能。
  • 添加 TLS 配置选项。

错误修复

  • 一致地使用默认传输。
  • 修复使用 delete 时屏障节点中的死锁。
  • 使 RPM 在安装时创建具有正确所有权的文件。
  • 删除组被删除时的组统计信息。
  • 避免在构建 GroupID 时进行额外的分配。

v1.5.2

功能

  • 向 JoinNode 添加屏障节点支持。
  • 添加使用 BarrierNode 过期组的功能。
  • 向 config 添加 alert/persist-topics。
  • 向 ChangeDetectNode 添加多字段支持。
  • 添加指向 PagerDuty v2 警报的链接。
  • 向 Sensu 警报添加其他元数据。

错误修复

  • 修复在数据流暂停后 join 没有足够快地赶上的问题。

v1.5.1

错误修复

  • pagerduty2 应该使用 routingKey 而不是 serviceKey
  • 修复 KafkaTopic 在 TICKscript 中不起作用的问题。
  • 提高 Kafka 警报吞吐量。

v1.5.0

功能

  • 添加警报抑制器,允许警报抑制来自其他匹配警报的事件。
  • 更新配置格式以允许多个 slack 配置。
  • 添加了一个新的 Kapacitor 节点 changeDetect,每次序列字段更改时都会发出一个值。
  • 向 JSON 警报响应添加 recoverable 字段,以指示警报是否会自动恢复。
  • 更新 OpsGenie 集成以使用 v2 API。要升级到使用新的 API,只需更新您的配置和 TICKscript 以使用 opsgenie2 而不是 opsgenie。如果您的 opsgenie 配置使用 recovery_url 选项,对于 opsgenie2,您将需要将其更改为 recovery_action 选项。这是因为新的 v2 API 不是使用静态 URL 构建的,因此只能定义操作,而不能定义整个 URL。
  • 向 httpd config 添加 https-private-key 选项。
  • 向所有节点添加 .quiet 以静音节点报告的任何错误。
  • 添加 Kafka 事件处理程序。

错误修复

  • Kapacitor ticks 生成哈希而不是其实际给定的名称。
  • 修复任务出错时负载服务中的死锁。
  • 支持 PagerDuty API v2。
  • 修复了无法删除与其主题同名的主题处理程序的问题。
  • 调整 PagerDuty v2 服务测试名称并捕获详细的错误消息。
  • 修复 Kafka 配置。

v1.4.1

错误修复

  • 修复了当使用 var 作为 stream/batch 时任务类型无效的错误

v1.4.0

发行说明

Kapacitor v1.4.0 添加了许多新功能,此处重点介绍

  • 用于从 dir 添加主题处理程序、任务和模板的加载目录服务。
  • 结构化日志记录,带有可用于 tail 指定任务日志的日志记录 API 端点。
  • 对 Docker Swarm 和 AWS EC2 的自动缩放支持。
  • 将 SideLoad 数据从外部源加载到您的 TICKscript 流中。
  • 警报 Post 处理程序和 HTTP Post 节点的完全可自定义的 HTTP Post 正文。

重大更改

将内部 API 更改为使用消息传递语义。

CombineFlatten 节点以前(错误地)跨批处理边界运行:这已得到修复。

功能

  • 添加了用于从 dir 加载主题处理程序、任务和模板的服务。
  • 主题处理程序文件格式已修改为包括 TopicID 和 HandlerID。
  • TICKscript 现在允许仅通过 TICKscript 进行任务描述。
  • 任务类型(批处理或流)不再是必需的。
  • 向 TICKscript 添加了 dbrp 表达式。
  • 添加了对 AWS EC2 自动缩放服务的支持。
  • 添加了对 Docker Swarm 自动缩放服务的支持。
  • 添加了 BarrierNode 以定期发出 BarrierMessage
  • 添加了 Previous 状态。
  • 添加了在重播完成后持久化重播状态的支持。
  • 添加了 alert.posthttps_post 超时,以确保清理挂起的连接。
  • 向 InfluxDB 订阅添加了订阅模式。
  • QueryNode 添加了线性填充支持。
  • 添加了 MQTT 警报处理程序。
  • 添加了用于将时间戳转换为整数的内置函数。
  • 向 UDF 添加了 bools 字段类型。
  • 添加了无状态 now() 函数以获取当前本地时间。
  • 在 Alerta AlertNode 中添加了对超时、标签和服务模板的支持。
  • 添加了通过模板系统支持自定义 HTTP Post 正文。
  • 添加了支持,允许在使用 HTTP Post 时将 HTTP 状态代码添加为字段。
  • 添加了 logfmt 支持并重构了日志记录。
  • 添加了通过 API 公开日志的支持。API 作为技术预览发布。
  • 在警报消息属性上添加了对 {{ .Duration }} 的支持。
  • 添加了对 JSON 行 的支持,用于流式传输 HTTP 日志。
  • 添加了新节点 Sideload,允许将数据从文件加载到数据流中。可以使用层次结构加载数据。
  • 将 Alert API 提升到稳定的 v1 路径。
  • WARN 级别日志更改为 INFO 级别。
  • 将 Go 版本更新到 1.9.2。

错误修复

  • 修复了日志 API 检查错误标头以获取所需内容类型的问题。
  • 修复了 VictorOps “data”字段是字符串而不是实际 JSON 的问题。
  • 修复了 MQTT.toml 配置生成中的 panic。
  • 修复了 MQTT 和 HTTPpost 的奇怪生成的 TOML。
  • 解决了源具有时钟偏移时空闲屏障丢弃所有消息的问题。
  • 解决了在 Windows x64 上启动录制时 Kapacitor 崩溃的问题。
  • 允许在 define-topic-handler 中使用 .yml 文件扩展名。
  • 修复了 HTTP 服务器错误日志记录。
  • 修复了停止正在运行的 UDF 代理的错误。
  • 修复了缺少作为函数参数的字段的错误消息不明确的问题。
  • 修复了错误的 PagerDuty 测试,该测试需要服务器信息。
  • 向 SNMP Trap 服务添加了 SNMP sysUpTime。
  • 修复了使用 HTTPPostHandler 重播录制时的 panic。
  • 修复了 Kubernetes incluster master API DNS 解析。
  • 在服务器退出后删除 pidfile。
  • Logs API 写入多个 HTTP 标头。
  • 修复了 RPM 包中缺少的依赖项。
  • 强制 tar 所有者/组为 root
  • 修复了在非 systemd Debian/Ubuntu 系统上安装/删除 Kapacitor 的问题。
  • 修复了在 RHEL 系统上打包不启用服务的问题。
  • 修复了 systemd 系统上递归符号链接的问题。
  • 修复了无效的默认 MQTT 配置。

v1.3.3

错误修复

  • 如果启用,则在没有身份验证的情况下公开 pprof。

v1.3.2

错误修复

  • 在 PagerDuty 中使用来自警报节点的详细信息字段。

v1.3.1

错误修复

  • 来自环境的代理,用于对 Slack 的 HTTP 请求
  • 修复导数节点在流任务中保留先前点的字段

v1.3.0

发行说明

此版本有两个主要功能。

  1. 为 Prometheues 样式数据收集添加了抓取和发现。
  2. 更新了警报主题系统。

这是一个关于如何配置 Kapacitor 以抓取发现目标的快速示例。首先,配置一个发现器,这里我们使用 file-discovery 发现器。接下来,配置一个抓取器以使用该发现器。

# Configure file discoverer
[[file-discovery]]
 enabled = true
 id = "discover_files"
 refresh-interval = "10s"
 ##### This will look for prometheus json files
 ##### File format is here https://prometheus.ac.cn/docs/operating/configuration/#%3Cfile_sd_config%3E
 files = ["/tmp/prom/*.json"]

# Configure scraper
[[scraper]]
 enabled = true
 name = "node_exporter"
 discoverer-id = "discover_files"
 discoverer-service = "file-discovery"
 db = "prometheus"
 rp = "autogen"
 type = "prometheus"
 scheme = "http"
 metrics-path = "/metrics"
 scrape-interval = "2s"
 scrape-timeout = "10s"

将以上代码段添加到您的 kapacitor.conf 文件中。

将以下代码段创建为文件 /tmp/prom/localhost.json

[{
 "targets": ["localhost:9100"]
}]

在本地启动 Prometheues node_exporter

现在,启动 Kapacitor,它将发现 localhost:9100 node_exporter 目标并开始抓取指标。有关抓取和发现系统的更多详细信息,请参阅完整文档 此处

此版本的第二个主要功能是对警报主题系统的更改。之前的版本以技术预览的形式引入了这个新系统,并且在此版本中,警报服务已得到简化。警报处理程序现在只有一个操作,并且属于单个主题。

因此,处理程序定义已得到简化。以下是使用新结构的一些示例警报处理程序

id: my_handler
kind: pagerDuty
options:
  serviceKey: XXX
id: aggregate_by_1m
kind: aggregate
options:
  interval: 1m
  topic: aggregated
id: publish_to_system
kind: publish
options:
  topics: [ system ]

要立即定义处理程序,您必须指定处理程序所属的主题。例如,要在系统主题上定义上述聚合处理程序,请使用以下命令

kapacitor define-handler system aggregate_by_1m.yaml

有关警报系统的更多详细信息,请参阅完整文档 此处

重大更改

修复了来自警报的 JSON 数据的不一致性。

The alert handlers Alerta, Log, OpsGenie, PagerDuty, Post and VictorOps allow extra opaque data to beattached to alert notifications.
That opaque data was inconsistent and this change fixes that.
Depending on how that data was consumed this could result in a breaking change, since the original behavior
was inconsistent we decided it would be best to fix the issue now and make it consistent for all future builds.
Specifically in the JSON result data the old key `Series` is always `series`, and the old key `Err` is now
always `error` instead of for only some of the outputs.

重构警报服务。

The change is completely breaking for the technical preview alerting service, a.k.a. the new alert topic
handler features. The change boils down to simplifying how you define and interact with topics.
Alert handlers now only ever have a single action and belong to a single topic.
An automatic migration from old to new handler definitions will be performed during startup.
See the updated API docs.

向每种节点类型添加通用错误计数器。

Renamed `query_errors` to `errors` in batch node.
Renamed `eval_errors` to `errors` in eval node.

UDF 代理 Go API 已更改。

The changes now make it so that the agent package is self contained.

修复了导数节点中缺少字段的错误。

The behavior of the node changes slightly in order to provide a consistent fix to the bug.
The breaking change is that now, the time of the points returned are from the right hand or current point time,
instead of the left hand or previous point time.

功能

  • 允许指定 Sensu 处理程序。
  • 向 Kapacitor 函数添加了类型签名。
  • 添加了 isPresent 运算符,用于验证值是否存在(#1284 的一部分)。
  • 添加了 Kubernetes 抓取支持。
  • 添加了 groupBy exclude,并向 flatten 添加了 dropOriginalFieldName
  • 添加了 KapacitorLoopback 节点,以便能够将数据从任务发送回 Kapacitor。
  • 向警报 POST 请求添加了标头。
  • Slack 服务中的 TLS 配置,用于 Mattermost 兼容性。
  • 添加了通用 HTTP Post 节点。
  • 在警报模板中公开服务器特定信息。
  • 添加了 Pushover 集成。
  • 向每种节点类型添加了 working_cardinality 统计信息,用于跟踪每个节点的组数。
  • 添加了 StateDuration 节点。
  • 默认 HipChat URL 应为空白。
  • 添加了用于执行 Kapacitor 数据库备份的 API 端点。
  • 添加了 sensu 警报的来源作为参数。
  • 为指标收集(拉取模型)添加了发现和抓取服务。
  • 将 Go 版本更新到 1.7.5。

错误修复

  • 修复了 Kubernetes 部分的损坏的 ENV var 配置覆盖。
  • 在修改之前复制批处理点切片,修复了潜在的 panic 和数据损坏。
  • 默认情况下,将 Prometheus 指标名称用作抓取数据的度量名称。
  • 修复了抓取器配置更新的可能死锁。
  • 修复了在状态跟踪节点中并发写入相同点时发生的 panic。
  • 简化了静态发现配置。
  • 修复了 InfluxQL 节点中缺少字段时发生的 panic。
  • 修复了 stateDuration 和 stateCount 节点上缺少 working_cardinality 统计信息的问题。
  • 修复了抓取 TargetManager 中的 panic。
  • 将 ProxyFromEnvironment 用于所有传出的 HTTP 流量。
  • 修复了批处理查询在第一个 nil 字段之后将缺少所有字段的错误。
  • 修复了 Telegram parseMode 值的大小写敏感性。
  • 修复了 pprof 调试端点。
  • 修复了配置 API 中更新配置部分时的挂起。现在,如果服务更新过程花费的时间过长,请求将超时并返回错误。以前,请求将永远阻塞。
  • 使 Alerta 身份验证令牌前缀可配置,并将其默认为 Bearer。
  • 修复了 logrotate 文件以正确轮换错误日志。
  • 修复了在恢复警报状态后警报持续时间不正确的错误。
  • 修复了使用引号解析 dbrp 值时的错误。
  • 修复了加载没有文件扩展名的重播文件时发生的 panic。
  • 修复了 Default Node 未更新批处理标签和 groupID 的错误。此外,标签值上的空字符串现在是应用默认条件的充分条件。有关更多信息,请参阅 #1233
  • 修复了 dot view 语法以使用 xlabels 而不创建无效引号。
  • 修复了删除所有录制后录制列表损坏的问题。
  • 修复了列出任务时缺少“vars”键的问题。
  • 修复了聚合无法更改类型时的错误。
  • 修复了进程无法 stat 数据目录时发生的 panic。

v1.2.0

发行说明

引入了一个用于处理警报的新系统。此警报系统允许您为警报事件配置主题,然后为各种主题配置处理程序。这样,警报生成与警报处理分离。

现有的 TICKscript 将继续工作,无需修改。

要使用这个新的警报系统,请从您的 TICKscript 中删除任何显式警报处理程序,并指定一个主题。然后配置主题的处理程序。

stream
    |from()
      .measurement('cpu')
      .groupBy('host')
    |alert()
      // Specify the topic for the alert
      .topic('cpu')
      .info(lambda: "value" > 60)
      .warn(lambda: "value" > 70)
      .crit(lambda: "value" > 80)
      // No handlers are configured in the script, they are instead defined on the topic via the API.

API 公开了用于查询每个警报状态的端点和用于配置警报处理程序的端点。有关更多详细信息,请参阅 API 文档。kapacitor CLI 已更新,其中包含用于定义警报处理程序的命令。

此版本引入了一个新功能,您可以使用点的数量而不是时间来窗口化。例如

stream
    |from()
        .measurement('my-measurement')
    // Emit window for every 10 points with 100 points per window.
    |window()
        .periodCount(100)
        .everyCount(10)
    |mean('value')
    |alert()
         .crit(lambda: "mean" > 100)
         .slack()
         .channel('#alerts')

通过此更改,警报节点将为其创建一个匿名主题。此主题像所有其他主题一样进行管理,在重启等过程中保留状态。因此,现有的警报节点现在将记住重启以及禁用/启用任务后的警报状态。

注意:新的警报功能正在技术预览版下发布。这意味着在以后的版本中可能会进行重大更改,直到该功能被认为是完整的。有关此功能如何影响 API 的具体信息,请参阅 有关技术预览的 API 文档

功能

  • 添加新的查询属性,用于将 group by 间隔与开始时间对齐。
  • 添加新的警报 API,支持配置处理程序和主题。
  • 将 alerta api 令牌移动到标头,并添加跳过 TLS 验证的选项。
  • 添加用于警报的 SNMP trap 服务。
  • 向 Window 节点添加 fillPeriod 选项,以便第一次发出等待期间经过后再发出。
  • 现在,当 Window 节点每个值都为零时,窗口将立即为每个新点发出。
  • 在重启和禁用/启用操作之间保留警报状态。
  • 您现在可以基于计数以及时间进行窗口化。
  • 在 slack 附件中启用 markdown。

错误修复

  • 修复 Union 节点缓冲过多不必要点的问题。
  • 修复连接到 InfluxDB 时启动失败关闭期间的 panic。
  • 修复重放期间的 panic。
  • logrotate.d 由于错误的文件模式而忽略 kapacitor 配置。
  • 修复聚合结果失败期间的 panic。

v1.1.1

发行说明

Kapacitor 没有更改,仅升级到 GoLang 1.7.4 以获取安全补丁。


v1.1.0

发行说明

新的 K8sAutoscale 节点,允许您根据 Kapacitor 消耗的任何指标自动扩展 Kubernetes 部署。例如,根据每秒请求数扩展部署 myapp

// The target requests per second per host
var target = 100.0

stream
    |from()
        .measurement('requests')
        .where(lambda: "deployment" == 'myapp')
    // Compute the moving average of the last 5 minutes
    |movingAverage('requests', 5*60)
        .as('mean_requests_per_second')
    |k8sAutoscale()
        .resourceName('app')
        .kind('deployments')
        .min(4)
        .max(100)
        // Compute the desired number of replicas based on target.
        .replicas(lambda: int(ceil("mean_requests_per_second" / target)))

已添加新的 API 端点,以便能够动态配置 InfluxDB 集群和警报处理程序,而无需重启 Kapacitor 守护程序。除了动态配置服务的能力外,还添加了 API 端点来测试可配置服务。有关更多详细信息,请参阅 API 文档

注意:查询节点中的 connect_errors 统计信息已被删除,因为客户端已更改,所有错误现在都在 query_errors 统计信息中计数。

功能

  • 添加 Kubernetes 自动扩缩器节点。您现在可以通过 Kapacitor 自动扩缩您的 Kubernetes 部署。
  • 添加新的 API 端点,用于动态覆盖配置的各个部分。
  • 升级到使用 GoLang 1.7
  • 添加用于测试服务集成的 API 端点。
  • 添加对 Slack 图标表情符号和自定义用户名的支持。
  • 使 Kapacitor 与 1.1 中可用的 InfluxQL 函数保持一致。

错误修复

  • 修复了保留未在 eval 表达式中引用的字段列表会导致错误的问题。
  • 修复订阅统计信息的数量。
  • 通过添加配置选项来设置默认保留策略,修复与 InfluxDB 的不一致性。
  • 在 CLI 输出中排序和动态调整列宽。
  • 添加缺失的 strLength 函数。

v1.0.2

错误修复

  • 修复了忽略保存集群/服务器 ID 文件的错误。
  • 如果 data_dir 在启动时不存在,则创建它。

v1.0.1

功能

  • 添加 TCP 警报处理程序
  • 添加将警报消息设置为字段的功能
  • 向 InfluxDBOut 节点添加 .create 属性,设置后将在任务启动时创建数据库和保留策略。
  • 允许在 TICKscript 中使用 duration / duration。
  • 添加对字符串操作函数的支持。
  • 添加为每个配置的 InfluxDB 集群设置特定 HTTP 端口和主机名的功能。

错误修复

  • 修复了默认配置文件中的错别字
  • 更改 |log() 输出为 JSON 格式,以便其自文档化结构。
  • 修复 TMax 和 Holt-Winters 方法的问题。
  • 修复 TMax 和 group by time 的错误。

v1.0.0

发行说明

Kapacitor v1.0.0 的首次发布。


此页面是否对您有帮助?

感谢您的反馈!


Flux 的未来

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

阅读更多

InfluxDB 3 开源版本现已进入公开 Alpha 阶段

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

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

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

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