智能监控:在 Chronograf 中自动化仪表板注释
作者:Sam Dillard / 用例,开发者,产品
2018年3月23日
导航到
在最新版本中,我们宣布 Chronograf 增加了对仪表板单元格注释的支持,以记录有趣的时序事件。这有助于记录某些事件发生的时间;例如,异常高的资源利用率、对基础设施的更改、自动扩展事件等。
注释会在所有仪表板及其相应的单元格中复制,以便在根本原因分析中关联事件。这是因为它们默认存储在 InfluxDB 中。
Chronograf 还通过其 API 暴露了一个注释端点。通过这种方式,Kapacitor 可以根据您为任何指标或事件设置的规则自动注释仪表板。这是通过 HTTPpost Alert 端点实现的。
以下是如何操作的步骤指南
- 以正常方式启动 InfluxDB(指向您的 Chronograf 实例)。为此,我们将使用 localhost。有关 InfluxDB 和 Chronograf 的入门信息,请参阅 InfluxDB 和 Chronograf 文档。您可以在此处下载它们。
- 启动 Chronograf。 注意:必须禁用身份验证。
- 记下 Chronograf 实例使用的源:'https://127.0.0.1:8888/sources/3/status' 表示我们正在使用源 3
- 在 Kapacitor 中,您需要手动编辑配置文件的 HTTPpost 部分,如下所示(请记住在 URL 中包含第三步中适当的源)
Kapacitor 有能力将自定义有效负载 POST 到任何 HTTP 端点。这正在“alert-template”参数中得到利用。有关 Kapacitor 入门的信息,请参阅 Getting Started with Kapacitor。
- 使用该配置保存并启动
kapacitord
:kapacitord -config <path/to/config>
。 - 现在您已准备好开始使用新的端点。
- 在 Chronograf(https://127.0.0.1:8888)中创建一个新的警报规则,并忽略警报处理程序
- 在右上角保存警报规则。
- 在任务管理器页面,您可以查看用于生成您使用 GUI 创建的警报规则的实际 TICKscript(它将在规则和 TICKscripts 下显示)。在“管理任务”页面的 TICKscripts 部分下点击您刚才创建的规则。
- 在 TICKscript 中,找到读取为
var trigger = data
的部分。 - 将以下行添加到该段落的底部:
.post()
和.endpoint('annotations')
。
我们在 Kapacitor 配置中将 HTTPpost 命名为“annotations”。这是 Kapacitor 任务引用的位置。
让我们测试一下!
- 为了测试此类警报,我通常在我的 Mac 上使用这个工具。您可以使用您喜欢的任何工具。
- 命令:
brew install stress
和stress -c 4
。 - 转到您创建的仪表板 (它监控与您的新警报规则相同的遥测数据)。
- 终止您的压力进程并刷新仪表板。您应该会看到类似这样的内容
更好的...
注释在所有仪表板及其相应单元格中的复制,这允许您寻找关联
祝您注释和自动化愉快!