智能监控:在 Chronograf 中自动执行仪表板注释

导航至

在最新版本中,我们宣布 Chronograf 增加了对仪表板单元格进行注释的支持,以标记有趣的时间事件。这对于记录何时发生某些事件非常有用;例如,异常高的资源利用率、何时对基础设施进行了更改、自动扩容事件等。

注释在所有仪表板及其各自的单元格中复制,以便在根本原因分析中关联事件。这是可能的,因为它们默认存储在 InfluxDB 中。

Chronograf 还通过其 API 公开了注释端点。通过此端点,Kapacitor 可用于根据您为任何指标或事件设置的规则自动注释仪表板。这通过 HTTPpost Alert 端点完成。

这是一个关于如何执行此操作的分步指南
  • 正常启动 InfluxDB(指向您的 Chronograf 实例)。为此,我们将使用 localhost。有关 InfluxDBChronograf 入门的信息,请参阅 InfluxDB 和 Chronograf 文档。在此处下载它们。
  • 启动 Chronograf。 注意: 必须禁用身份验证。
  • 记下您的 Chronograf 实例正在使用的源:'http://localhost:8888/sources/3/status' 表示我们正在使用源 3
  • 在 Kapacitor 中,您需要手动编辑其配置文件的 HTTPpost 部分,如下所示(请记住在 URL 中包含第三步中的相应源)

Kapacitor 具有使用自定义有效负载 POST 到任何 HTTP 端点的能力。这在“alert-template”参数中得到利用。有关详细信息,请查看Kapacitor 入门文档。

  • 保存并启动 kapacitord 使用该配置: kapacitord -config <path/to/config>
  • 现在您已准备好开始使用新的端点。
  • 在 Chronograf (http://localhost:8888) 中,创建一个新的警报规则并忽略警报处理程序

  • 在右上角保存警报规则。
  • 在任务管理器页面中,您可以查看用于生成您使用 GUI 创建的警报规则的实际 TICKscript(它将显示在规则和 TICKscript 下)。单击您刚刚在“管理任务”页面的“TICKscripts”部分下创建的规则。

  • 在 TICKscript 中,找到读取以下内容的部分: var trigger = data
  • 将以下行添加到该节的底部: .post().endpoint('annotations')

我们在 Kapacitor 配置中将 HTTPpost 命名为“annotations”。这是 Kapacitor 任务引用它的地方。

让我们测试一下!
  • 为了测试这样的警报,我通常在我的 Mac 上使用这个工具。您可以随意使用您喜欢的任何工具。
  • 命令: brew install stress 和 stress -c 4
  • 转到您已创建的仪表板,该仪表板监控与您的新警报规则相同的遥测数据。
  • 终止您的压力进程并刷新仪表板。您应该看到类似这样的内容

更棒的是...

注释在所有仪表板及其各自的单元格中复制...这使您可以查找关联性

祝您注释和自动化愉快!