我是普罗米修斯的新手,我会尝试清楚地解释我的问题。
以下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"}
这导致了没有数据"回应,我不明白为什么。有人可以帮忙吗?我该如何进一步调查?
由于
答案 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"}
)