Prometheus监控教程:使用PromQL查询监控数据(上篇)

PromQL是Prometheus监控系统中的表达式语言,用于查询和聚合时间序列数据。它支持四种数据类型:瞬时向量、范围向量、标量和字符串。时间序列选择器包括即时和范围向量选择器,用于指定指标和标签过滤。运算符涵盖算术、比较、逻辑和聚合操作。此外,PromQL还提供了丰富的内置函数,如abs、absent、delta和rate等,用于数据处理和分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PromQL是Prometheus提供的一个函数式的表达式语言,可以使用户实时地查找和聚合时间序列数据。表达式计算结果可以在图表中展示,也可以在 Prometheus表达式浏览器中以表格形式展示,或者作为数据源以HTTP API的方式提供给外部系统使用。PromQL虽然以QL结尾,但是它不是类似SQL的语言,因为在时间序列上执行计算类型时,SQL语言相对缺乏表达能力。而PromQL语言表达能力非常丰富,可以使用标签进行任意聚合,还可以使用标签将不同的标签连接到一起进行算术运算操作。内置了时间和数学等很多函数可以使用。

一、PromQL表达式

1.1、语言数据类型

PromQL表达式语言中,一个表达式或者子表达式可以表示以下4种类型之一:

  • Instant vector:瞬时向量,一组time series(时间序列),每个time series包括了一个时间戳的数据点,所有time series数据点拥有相同的时间戳。

  • Range vector:范围向量,一组time series包含一个时间范围内的一组数据点。

  • Scalar:标量,为一个浮点数值。

  • String:字符串,为一个字符串数值。当前未使用。

1.2、Literals数据格式

1.2.1 String literals

 字符串可以用单引号(‘’)、双引号(“”)或反引号(``)指定为文字。

1.2.2 Float literals

 浮点类型数值的格式为:-[.(digits)]
 如:-2.43

1.3、Time series(时间序列)选择器

1.3.1 Instant vector selectors(即时矢量选择器)

 瞬时向量选择器用于选择一组time series和每个time series对应的某一个时间戳数据点,唯一的要求是必须指定metric指标名。

例:查询指标名http_requests_total对应的所有time series表达式:

http_requests_total

可以通过在花括号 ( {}) 中附加一个逗号分隔的标签匹配器列表来进一步过滤这些时间序列。

例:仅选择具有http_requests_total 度量名称且job标签设置为prometheus且其 group标签设置为的时间序列canary:

http_requests_total{job="prometheus",group="canary"}

通过负匹配或正则表达式匹配tag选择时间序列,支持如下匹配运算符:

  • = 等于

  • != 不等于

  • =~ 选择与提供的字符串进行正则表达式匹配的标签

  • !~ 选择与提供的字符串不匹配的标签

1.3.2 Range vector selectors(范围矢量选择器)

范围向量字面量的工作方式类似于即时向量字面量,唯一区别是选择的时间序列是一个时间范围内的时序数据。从语法上讲,持续时间附加在[]向量选择器末尾的方括号 ( ) 中,以指定应该为每个结果范围向量元素获取多远的时间值

例:为所有时间序列选择了过去 5 分钟内记录的所有值,这些时间序列的指标名称http_requests_total和job标签设置为prometheus:

http_requests_total{job="prometheus"}[5m]

1.3.3 Offset modifier(偏移修改器)

 Offset修改器允许修改查询中瞬时向量和范围向量的时间偏移。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT运维先森

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值