当使用'和"时,除法不会产生任何数据。操作者

时间:2018-01-25 10:02:38

标签: prometheus

我是普罗米修斯的新手,我会尝试清楚地解释我的问题。

以下2个查询在Promotheus中返回数据

node_memory_MemAvailable{instance="10.0.0.15:9100",job="node-exporter"}

node_memory_MemTotal{instance="10.0.0.15:9100",job="node-exporter"}

然后我可以分开它们:

node_memory_MemAvailable{instance="10.0.0.15:9100",job="node-exporter"}/ node_memory_MemTotal{instance="10.0.0.15:9100",job="node-exporter"}

到目前为止,这没关系。

我还有一个查询,它提供了有关节点的信息:

node_meta

返回:

...
node_meta{container_label_com_docker_swarm_node_id="zekal76kw15vnp9u6ol0r2yvw",instance="10.0.0.15:9100",job="node-exporter",node_id="zekal76kw15vnp9u6ol0r2yvw",node_name="dc0-docker6"}
...

所以,我可以使用"和" 2个第一个查询中的运算符,以获取特定' node_name':

的指标
node_memory_MemAvailable and on (instance) node_meta{node_name="dc0-docker6"}    

 node_memory_MemTotal and on (instance) node_meta{node_name="dc0-docker6"}

这些查询也会返回数据。

问题是当我使用" /"操作者:

node_memory_MemAvailable and on (instance) node_meta{node_name="dc0-docker6"} /node_memory_MemTotal and on (instance) node_meta{node_name="dc0-docker6"}

这导致了没有数据"回应,我不明白为什么。有人可以帮忙吗?我该如何进一步调查?

由于

1 个答案:

答案 0 :(得分:2)

/的优先级高于and,因此请尝试:

  (
      node_memory_MemAvailable 
    and on (instance) 
      node_meta{node_name="dc0-docker6"}
  )
/
  (
      node_memory_MemTotal 
    and on (instance)
      node_meta{node_name="dc0-docker6"}
  )