prometheus中PromQL 常用表达式

PromQL 涉及两个重要概念 指标名称 和 匹配器(标签过滤器)

promQL 查询就是指标名称和匹配器的组合查询

 1、只提供指标名称

node_load1

2、只提供匹配器

{instance="10.253.9.197:9100"}     #其实列出了针对这个instance采集的所有指标名称

3、给定指标名和匹配器

node_load1{instance="10.253.9.197:9100"}

列出所有指标

({__name__=~".+"})

列出每个metrics有多少个

count by (__name__)({__name__=~".+"})  列出指标
topk(10, count by (__name__)({__name__=~".+"})) 列出top10的metric数量 按照metric名字区分


count by (__name__)({__name__=~"traefik.+"}) #列出指标名称中以traefik开头的其中一个指标名称中指标个数

3、列出metrics个数超出一定范围的指标名

统计每个指标的时间序列,超出1000的指标名
count by (__name__)({__name__
=~".+"}) > 10000

 4、列出指定job中有每个指标名的指标数量

count by (__name__) ({job="envoy-stats"})

5、列出指定job中指标数量

sum(count by (__name__) ({job="envoy-stats"}))

 6、top10的metric数量 按照job名字分

topk(10, count by (__name__, job)({__name__=~".+"}))

 

原文地址:https://www.cnblogs.com/gavin11/p/14239362.html