You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用PromQL按agent_host统计OpenStack唯一路由器数量?

按网络节点统计唯一路由器数量的PromQL实现

你需要先结合agent_host和router_id做组合去重,再按节点分组计数,正确的查询语句如下:

count by(agent_host) (count by(agent_host, router_id) (openstack_neutron_l3_agent_of_router))

语句解释

  1. 内层分组去重:count by(agent_host, router_id) (openstack_neutron_l3_agent_of_router)
    把指标按「节点+路由器ID」的组合分组,这样同一个路由器在同一节点上的重复记录会被合并成一条,实现单节点内的路由器去重。
  2. 外层按节点计数:count by(agent_host)
    对每个节点下的去重后路由器组合进行计数,最终得到每个agent_host(网络节点)对应的唯一路由器数量。

原语句的问题

你之前写的count(count by(router_id) (openstack_neutron_l3_agent_of_router))只做了全局路由器ID的去重,没有关联节点信息,最后得到的是整个OpenStack环境里的唯一路由器总数,无法按节点拆分统计。

内容的提问来源于stack exchange,提问作者DaveWox

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 07:52:01