prometheus-4种metric类型说明

本文介绍了Prometheus中的四种metric类型:Counter(计数器)、Gauge(测量器)、Histogram(直方图)和Summary(分位统计器)。Counter用于递增计数,Gauge则支持增减变化。Histogram用于统计指标分布,如请求耗时,而Summary在客户端计算分位数。直方图通过bucket记录不同范围的值,Summary直接上报预计算的分位数,但会消耗更多客户端资源。

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

前提了解

prometheus中存储的数据都是时序型,其数据模型都是如下:
metric_name{label=value,…} value timestamp
下文中说的数据类型只是客户端的封装

prometheus 的4种metric

prometheus的客户端中提供了4种metric,对于服务端来说并没有使用这些metric,服务端只是简单当成是独立的时序数据来使用

  • Counter:计数器
    是一种累加型指标,指可以增加或者重置为0,可以被用来做请求数统计,成功数统一等等。不能用来代表可以下降的指标
  • Gauge:测量器
    一种可以增加或者减少的测量器,可以用来做内存使用、温度测量等指标测量
  • Histogram:直方图
    用于统计指标的分布,例如请求耗时的分布情况,需要注意的是prometheus的直方图是一种累积性的直方图,举例说明:
    假设分布的桶位分别是buckets[] = {.005, .01, .025, .05, .075, .1, .25, .5, .75, 1, 2.5, 5, 7.5, 10}, 落在0.01桶内的值包含了落在0.005桶的值,这种累积型的直方图对于更简单
    prometheus的客户端采用了三个指标来表示直方图:
    metric_name_bucket:不同耗时上限,所采集到的值
    metric_name_sum: 统计的值的总和,例如请求耗时总和
    metric_name_count:统计的总数,例如请求的总数量
    prometheus也提供了histogram_quantile函数来计算分位点,举例说明:
    http_request_duration_seconds_bucket直方图http_request_duration_seconds的桶位指标,计算过去10分钟90%的请求的最大耗时:histogram_quantile(0.9, rate(http_request_duration_seconds_bucket[10m]))
    注意: 这种计算是一种估算,假设在bucket中,数据的分布式线性的,进行估算
  • Summary:分位统计器
    跟Histogram类似,也用于计算数据分位,但是不同的是,Histogram将三个指标上报到服务端,用promsql提供函数进行计算,Summary直接在客户端计算好之后进行上报,这种比较消耗客户端资源,summary也存储了3个指标:
    metric_name_φ-quantiles
    metric_name_sum
    metric_name_count

参考

https://prometheus.io/docs/concepts/metric_types/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值