当前位置:首页 > 科技  > 软件

Prometheus 的查询语言 PromQL 详解

来源: 责编: 时间:2023-11-28 09:36:40 346观看
导读01、介绍我们使用 Prometheus Go client library 在 Go 代码中埋点,将指标数据上报到 Prometheus server,接下来我们使用 PromQL 查询指标数据。PromQL 可以在 Prometheus 提供的 http://localhost:9090/graph 中执行,本

01、介绍

我们使用 Prometheus Go client library 在 Go 代码中埋点,将指标数据上报到 Prometheus server,接下来我们使用 PromQL 查询指标数据。xrC28资讯网——每日最新资讯28at.com

PromQL 可以在 Prometheus 提供的 http://localhost:9090/graph 中执行,本文我们介绍怎么使用 PromQL 查询指标数据。xrC28资讯网——每日最新资讯28at.com

02、PromQL

PromQL 除了直接使用指标名称查询时序数据之外,还可以联合使用 Label 和函数等。xrC28资讯网——每日最新资讯28at.com

比如我们使用最多的 Counter 指标类型,它会统计自启动 Prometheus 以来的计数总和,但是我们并不关心总数。我们只想知道 Counter 随着时间的推移,计数增加的速度。xrC28资讯网——每日最新资讯28at.com

比如我们可以直接使用自定义指标名称 http_request_count_total 查询所有指标名称为 http_request_count_total 的指标数据(HTTP 请求数)。xrC28资讯网——每日最新资讯28at.com

实际上,我们并不是要查询 HTTP 请求数的总和,而是想查询单位时间内,请求数的增长速度。此时,我们可以使用函数 rate 完成。xrC28资讯网——每日最新资讯28at.com

使用 rate(http_request_count_total[5m]) 可以查询 HTTP 每秒请求数,其中 [5m] 是指过去 5 分钟每秒请求数的平均值。xrC28资讯网——每日最新资讯28at.com

比如我们的 HTTP 请求数指标中包含 PATH 标签,如果我们想要统计所有 HTTP 请求数指标的每秒请求数的总和,可以使用 sum 聚合运算符 和 without 子句,sum without(path)(rate(http_request_count_total[5m]))。xrC28资讯网——每日最新资讯28at.com

比如我们想要查询指定 PATH 的 HTTP 每秒请求数,我们可以使用 rate(http_request_count_total{path="/ping"}[5m]) 查询,我们通过 {path="/ping"} 过滤指标数据。xrC28资讯网——每日最新资讯28at.com

实际上 http_request_count_total{path="/ping"} 中 {} 称为选择器,其中 path="/ping" 中的 = 称为匹配器,我们可以在 {} 中使用多个匹配器,使用 , 分隔。xrC28资讯网——每日最新资讯28at.com

匹配器有 4 种,path="/ping" 中的 = 是等式匹配器,此外,还有 != 不等、=~ 正则等、!~ 正则不等。xrC28资讯网——每日最新资讯28at.com

03、总结

本文我们主要介绍 PromQL 的一般使用方式,主要包括以下几个维度:xrC28资讯网——每日最新资讯28at.com

  1. 指标名称
  2. 标签
  3. 聚合运算符
  4. 子句
  5. 函数
  6. 选择器
  7. 匹配器

除了指标名称和标签,我们在之前的文章介绍过之外,其它都属于新知识,聚合运算符共计 11 个,我们只使用了 sum,子句除了 without 之外,还有 by,函数也只是使用 rate 举例,建议读者朋友们阅读官方文档,了解所有聚合运算符和函数的使用方式。xrC28资讯网——每日最新资讯28at.com

需要注意的是,本文我们介绍的是 PromQL 的查询范畴,关于 PromQL 计算范畴的内容,我们都没有介绍,比如,算术运算符、比较运算符、逻辑运算符,也是非常重要的内容,尤其在我们配置告警时会用到这些运算符。xrC28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-34661-0.htmlPrometheus 的查询语言 PromQL 详解

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Display和Visibility的区别,你了解了吗?

下一篇: 如何在 GO 中写出准确的基准测试

标签:
  • 热门焦点
  • Find N3入网:最高支持16+1TB

    OPPO将于近期登场的Find N3折叠屏目前已经正式入网,型号为PHN110。本次Find N3在外观方面相比前两代有很大的变化,不再是小号的横向折叠屏,而是跟别的厂商一样采用了较为常见的
  • MIX Fold3包装盒泄露 新机本月登场

    小米的全新折叠屏旗舰MIX Fold3将于本月发布,近日该机的真机包装盒在网上泄露。从图上来看,新的MIX Fold3包装盒在外观设计方面延续了之前的方案,变化不大,这也是目前小米旗舰
  • 小米降噪蓝牙耳机Necklace分享:听一首歌 读懂一个故事

    在今天下午的小米Civi 2新品发布会上,小米还带来了一款新的降噪蓝牙耳机Necklace,我们也在发布结束的第一时间给大家带来这款耳机的简单分享。现在大家能见到最多的蓝牙耳机
  • 十个简单但很有用的Python装饰器

    装饰器(Decorators)是Python中一种强大而灵活的功能,用于修改或增强函数或类的行为。装饰器本质上是一个函数,它接受另一个函数或类作为参数,并返回一个新的函数或类。它们通常用
  • 如何使用JavaScript创建一只图像放大镜?

    译者 | 布加迪审校 | 重楼如果您曾经浏览过购物网站,可能遇到过图像放大功能。它可以让您放大图像的特定区域,以便浏览。结合这个小小的重要功能可以大大改善您网站的用户体验
  • 梁柱接棒两年,腾讯音乐闯出新路子

    文丨田静 出品丨牛刀财经(niudaocaijing)7月5日,企鹅FM发布官方公告称由于业务调整,将于9月6日正式停止运营,这意味着腾讯音乐长音频业务走向消亡。腾讯在长音频领域还在摸索。为
  • 阿里瓴羊One推出背后,零售企业迎数字化新解

    作者:刘旷近年来随着数字经济的高速发展,各式各样的SaaS应用服务更是层出不穷,但本质上SaaS大多局限于单一业务流层面,对用户核心关切的增长问题等则没有提供更好的解法。在Saa
  • 2纳米决战2025

    集微网报道 从三强争霸到四雄逐鹿,2nm的厮杀声已然隐约传来。无论是老牌劲旅台积电、三星,还是誓言重回先进制程领先地位的英特尔,甚至初成立不久的新
  • 上海举办人工智能大会活动,建设人工智能新高地

    人工智能大会在上海浦江两岸隆重拉开帷幕,人工智能新技术、新产品、新应用、新理念集中亮相。8月30日晚,作为大会的特色活动之一的上海人工智能发展盛典人工
Top