我有两个出口商用于向prometheus提供数据 - node exporter和elasticsearch exporter。我正在尝试将两个导出器的源组合成一个查询,但不幸的是在图中得到“无数据点”。
每个系列都成功显示数据:
当我尝试从彼此中减去两个系列时,这就是结果:
我在这里错过了什么?
谢谢。
你在这里尝试的减法比在开头读到的要复杂得多。在-
运算符的两侧是可以导致一个或多个时间序列的查询。因此请求的操作如下:在左侧执行查询并获得一个或多个时间序列的结果。时间序列表示度量标准及其所有标签及其值的唯一组合。然后执行右侧的第二个查询,这也会产生一个或多个时间序列。现在计算结果,仅使用具有匹配标签组合的那些组合。
对于您的示例,这意味着来自node_exporter
和elasticsearch_exporter
的指标具有不同的标签名称(甚至标签的不同值)。如果两侧都没有组合,您将看到空结果。有关如何应用运算符的详细信息,请参阅the prometheus docs。
要解决您的问题,您可以执行以下操作:
ignoring(a,b,c)
来减少多余的尺寸,例如: job