Prometheus 普罗米修斯查询,如何找到每行的百分比
我有以下数据:ip标识的每个服务实例的计数器Prometheus 普罗米修斯查询,如何找到每行的百分比,prometheus,Prometheus,我有以下数据:ip标识的每个服务实例的计数器 ribbon_rule_count_total{way="round_robin",service="order_server",ip="101.141.108.119"} 109056 ribbon_rule_count_total{way="round_robin",service="order_server",ip="101.141.108.120"} 109057 ribbon_rule_count_total{way="round_ro
ribbon_rule_count_total{way="round_robin",service="order_server",ip="101.141.108.119"} 109056
ribbon_rule_count_total{way="round_robin",service="order_server",ip="101.141.108.120"} 109057
ribbon_rule_count_total{way="round_robin",service="order_server",ip="101.141.108.121"} 109056
ribbon_rule_count_total{way="round_robin",service="user_server",ip="101.136.34.198"} 109056
ribbon_rule_count_total{way="round_robin",service="user_server",ip="101.136.34.197"} 109056
我想显示每个ip的指标相对于服务的比率,如下所示
order_server-101.141.108.119 33%
order_server-101.141.108.120 33%
order_server-101.141.108.121 33%
user_server-101.136.34.198 50%
user_server-101.136.34.197 50%
为了计算服务上每个ip的指标百分比,您需要: 忽略ip的度量
sum(ribbon_rule_count_total) without(ip)
这将为您提供以下指标:
ribbon_rule_count_total{way="round_robin",service="order_server"} 318269
ribbon_rule_count_total{way="round_robin",service="user_server"} 218112
能够用匹配的表达式划分每个度量
ribbon_rule_count_total / ignoring(ip) group_left sum(ribbon_rule_count_total) without(ip)
这应该会让你在你的问题中得到你所期望的,并在其中增加百分比值
100 * ribbon_rule_count_total / ignoring(ip) group_left sum(ribbon_rule_count_total) without(ip)
这对于计算来说应该足够了。如果您真的想要一个与您的示例类似的显示,您可以:
为了计算服务上每个ip的指标百分比,您需要: 忽略ip的度量
sum(ribbon_rule_count_total) without(ip)
这将为您提供以下指标:
ribbon_rule_count_total{way="round_robin",service="order_server"} 318269
ribbon_rule_count_total{way="round_robin",service="user_server"} 218112
能够用匹配的表达式划分每个度量
ribbon_rule_count_total / ignoring(ip) group_left sum(ribbon_rule_count_total) without(ip)
这应该会让你在你的问题中得到你所期望的,并在其中增加百分比值
100 * ribbon_rule_count_total / ignoring(ip) group_left sum(ribbon_rule_count_total) without(ip)
这对于计算来说应该足够了。如果您真的想要一个与您的示例类似的显示,您可以: