首页 > 其他分享 >Prometheus四种指标及PromQL实例

Prometheus四种指标及PromQL实例

时间:2024-03-11 22:11:25浏览次数:24  
标签:http 请求 实例 seconds 耗时 Prometheus PromQL

Prometheus四种主要的指标类型包括Counter、Gauge、Histogram和Summary,以及相应的PromQL实例如下:

  1. Counter(计数器)

    • 作用只增不减的计数器,常用于记录请求次数、任务完成数、错误发生次数等。重启进程后,计数会被重置。
    • PromQL实例:假设我们有一个HTTP请求次数的Counter类型指标http_requests_total,我们想要查询最近一小时内增长最快的10个HTTP请求路径:
    promql`topk(10, delta(http_requests_total[1h]))`
    
  2. Gauge(仪表)

    • 作用反映系统的当前状态,样本数据可增可减。常用于表示CPU使用率、内存使用率、磁盘空间使用率等
    • PromQL实例:如果我们想要查询当前系统中CPU使用率最高的前三个节点:
    promql`topk(3, 100 - (avg by (instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100))`
    
  3. Histogram(直方图)

    • 作用表示样本数据的分布情况,通常用于统计请求的耗时、大小等。它提供了多个时间序列,包括_sum(总和)、_count(总数)以及多个_bucket(分桶统计)。
    • PromQL实例:假设我们有一个请求耗时的Histogram类型指标http_request_duration_seconds,我们想要查询请求耗时在0.5秒到1秒之间的请求次数:
    promql`histogram_quantile(0.95, sum(rate(http_request_duration_seconds_bucket{le="1"}[5m])) by (le)) -   
    histogram_quantile(0.95, sum(rate(http_request_duration_seconds_bucket{le="0.5"}[5m])) by (le))`
    

    注意:这个查询可能并不准确,因为Histogram类型不直接提供区间内的计数,而是通过累计的方式来表示分布。在实际应用中,我们更常用的是查询某个分位数的请求耗时,如95%的请求耗时在多少以内。

  4. Summary(摘要)

    • 作用类似于Histogram,但更注重于分位数的计算。它同样提供了_sum、_count以及多个quantile(分位数)。
    • PromQL实例:假设我们有一个请求耗时的Summary类型指标http_request_duration_seconds,我们想要查询95%分位数的请求耗时:
    promql`http_request_duration_seconds{quantile="0.95"}`
    

需要注意的是,以上PromQL实例仅供参考,实际使用时需要根据具体的指标名称、标签和查询需求进行调整。同时,由于Prometheus查询语言的复杂性和多样性,还有很多其他的查询方式和技巧可以探索和学习。

标签:http,请求,实例,seconds,耗时,Prometheus,PromQL
From: https://www.cnblogs.com/ydswin/p/18067218

相关文章

  • Flowable启动流程实例和查询任务以及完成任务
    效果图 因为流程删除,所以需要  代码部分packagecom.java;importorg.flowable.engine.ProcessEngine;importorg.flowable.engine.ProcessEngineConfiguration;importorg.flowable.engine.RepositoryService;importorg.flowable.engine.RuntimeService;import......
  • HashMap线程不安全实例(jdk8)
    一、前言本文紧接:HashMap线程不安全实例(jdk1.7)-seeAll-博客园(cnblogs.com),介绍jdk8中线程不安全的一些情况,且主要是在上篇文章的基础上和jdk1.7做一个对比。 二、初始化桶数组的例子1,测试代码和上篇文章一样。2,断点设置同样设置在初始化桶数组的地方,且断点的详细配......
  • Prometheus数据迁移工具
    参考文档promscale/migration-tool/cmd/prom-migratoratmaster·timescale/promscale(github.com)概述Prom-migrator是一个开源的、社区驱动的、免费使用的通用prometheus数据迁移工具,利用Prometheus的远程存储终结点。独特功能将Prometheus数据从一个存储系......
  • Prometheus监控系统进程---process-exporter
    参考文档Namedprocessesstacked|GrafanaLabsNamedprocesses|GrafanaLabsncabatoff/process-exporter:Prometheus导出器,用于挖掘/proc以报告所选进程(github.com)操作步骤下载安装包wgethttps://github.com/ncabatoff/process-exporter/releases/download/v0.7.......
  • HashMap线程不安全实例(jdk1.7)
    一、前言jdk1.7中,以put()方法举例,线程不安全的一些情况:1,初始化HashMap的桶数组的时候,一个线程初始化了桶数组并插入了第一个元素,但是另一个线程不知道初始化好了,也执行了初始化的操作,清除了前面线程已经插入的元素;2,两个线程同时触发扩容,在翻转同个桶位上的链表时,链表形成环,类似......
  • iptables五表五链及对应实例
    iptables是Linux系统上用于配置网络包过滤规则的工具,它使用表(tables)和链(chains)来组织规则。以下是iptables中的五表五链及其对应的实例说明:五表filter表:默认表,用于过滤数据包,允许或拒绝数据包通过。它包含INPUT、OUTPUT和FORWARD三个链。nat表:用于网络地址转换(NAT),例如端口转发......
  • MATLAB----遗传算法及Simulink延时模块实例
    clctic%%参数初始化maxgen=100;%进化代数,即迭代次数,初始预定值选为100sizepop=200;%种群规模,初始预定值选为100pcross=0.9;%交叉概率选择,0和1之间,一般取0.9pmutation=0.01;%变异概率选择,0和1之间,一般取0.01individuals=struct('fitness',zeros(1,sizepop),'chrom',[]);%种群......
  • 当未指定且存在多个构造器,实例化对象时Spring如何选择?
    前言在前面的讲解中,我们了解了如何获取构造器。当只有一个符合条件的构造器时,自然会选择它作为初始化的构造器。然而,在上一节中,我们遇到了一种特殊情况:当有多个符合条件的构造器时,返回的是一个数组。在这种情况下,Spring又是如何从多个构造器中选择最合适的呢?今天,我们将讨论的主题......
  • prometheus监控+alertmanager告警
    prometheus监控+alertmanager告警 配置告警规则1、创建规则目录mkdir/usr/local/prometheus/rules2、编写告警规则文件。vim/usr/local/prometheus/rules/rule.yml#添加以下配置groups:-name:instance-abnormalrules:-alert:POD新增告......
  • docker部署监控Prometheus+Grafana
    目录一、Prometheus简介二、Prometheus基本原理三、Prometheus架构图四、Prometheus特性五、Prometheus组件六、Prometheus服务发现七、部署环境八、部署主机九、部署Prometheus1、安装docker2、启动docker并设置开机自启3、下载镜像包4、创建prometheus挂载目录5、创建prometheus......