我正在使用 Prometheus 使用 Grafana 监控 30 台服务器。但我为此使用模板,我不能在模板中使用警报。你会为此推荐什么?如果没有警报系统,Monitor 系统对我不起作用。我想为所有服务器使用一个仪表板。
我如何转换变量?有什么例子吗?
rate(node_network_receive_bytes_total{instance="$node",job="$job"}[$__rate_interval])*8
我正在使用 Prometheus 使用 Grafana 监控 30 台服务器。但我为此使用模板,我不能在模板中使用警报。你会为此推荐什么?如果没有警报系统,Monitor 系统对我不起作用。我想为所有服务器使用一个仪表板。
我如何转换变量?有什么例子吗?
rate(node_network_receive_bytes_total{instance="$node",job="$job"}[$__rate_interval])*8
作为一个粗略的解决方法,您可以完全删除模板并将警报放在一起(单个查询)或单独为每个实例(多个查询)
rate(node_network_receive_bytes_total{instance=~".*",job="<hardcoded_job_name>"}[$__rate_interval])*8
您仍然会在 Grafana 发送的邮件/屏幕截图中看到有问题的实例。
这是 Grafana 的一个主要缺点,导致我们使用其他工具来解决这个问题。
正如@anemyte 所提到的,目前无法使用模板发出警报。
我想您的问题是如何为带有变量的查询创建警报规则。如果是这样,那么目前是不可能的。在 GitHub 上有一个未解决的问题,因此该功能可能会在将来的某个时候出现。
现在,您可以创建不使用任何变量的仪表板/面板,也可以设置Alertmanager并使用 prometheus 定义警报规则。