首页 > 其他分享 >Prometheus 快速入门教程(五):Prometheus 的关键概念

Prometheus 快速入门教程(五):Prometheus 的关键概念

时间:2022-10-06 20:06:24浏览次数:51  
标签:name Metric 入门教程 柱状图 指标 Prometheus 实例 关键

前面几篇文章,我们单刀直入地讲解了 Prometheus 能做什么。接着用一个例子来让大家知道如何使用 Prometheus,以及如何进行告警配置。最后,还用了一篇文章来讲解如何进行图表配置。但是 Prometheus 里面也有一些关键性的概念,理解这些概念有利于我们后续更深入的学习。

Metric 指标

在 Prometheus 中,我们所有的信息都以 Metrics(指标) 的形式存在。

Metrics 由 metric name 和 label name 组成。

<metric name>{<label name>=<label value>, ...}

例如下面的 ​​api_http_requests_total​​​ 就是 metrics name(指标名称),而 ​​method​​ 就是 label name(标签)。而 metric name 加上 label name 就是一个完整的 Metric。

api_http_requests_total{method="POST", handler="/messages"}

Metric Type 指标类型

Prometheus 中主要有四种不同的指标类型,用来适应不同的指标类型。

  • counter 计数器
  • gauges 计量器
  • histogram 柱状图
  • summary 汇总

counter 计数器

数据从 0 开始累计,理想状态下应该是永远增长或者是不变。

适用于例如机器开机时间、HTTP 访问量等数值。

gauges 量器

获取一个返回值,采集回来是多少就是多少。数值可能升高,也可能降低。

适用于例如硬盘容量、CPU 内存使用率等数值。

histogram 柱状图

counter 和 gauges 反应的是数值的情况,而 histogram 则是反应数值的分布情况。

histogram 柱状图反映了样本的区间分布梳理,经常用来表示请求持续时间、响应大小等信息。

例如我们 1 分钟内有 1000 个 http 请求,我们想要知道大多数的请求耗时是多少。这时我们使用评价耗时可能不太准,但是我们使用 histogram 柱状图就可以看出这些请求大多数都是分布在哪个耗时区间。

Summary 汇总

柱状图同样表示样本的分布情况,与 Histogram 类似,其会有总数、数量表示。但其多了一个是中位数的表示。 常用来表示类似于:请求持续时间、响应大小的信息。

Histogram 与 summary

为了区分是平均的慢还是长尾的慢,最简单的方式就是按照请求延迟的范围进行分组。例如,统计延迟在010ms之间的请求数有多少而1020ms之间的请求数又有多少。通过这种方式可以快速分析系统慢的原因。Histogram和Summary都是为了能够解决这样问题的存在,通过Histogram和Summary类型的监控指标,我们可以快速了解监控样本的分布情况。

Histogram 指标直接反应了在不同区间内样本的个数,区间通过标签len进行定义。而 summary 则是使用中位数反映样本的情况。

任务(Job)和实例(Instance)

在 Prometheus 中抓取数据的应用叫做实例(Instance),而几个为了同个目的的实例组合起来称之为任务(Job)。例如下面是一个有4个实例的服务工作。

job: api-server  // 名为api-server的job
instance 1: 1.2.3.4:5670
instance 2: 1.2.3.4:5671
instance 3: 5.6.7.8:5670
instance 4: 5.6.7.8:5671

总结

这篇文章我们介绍了 Prometheus 的几个关键概念:

  • Metric 指标
  • Metric Type 指标类型
  • 工作(Job)和实例(Instance)

它们之间的关系如下图所示:

一个任务(Job)可以有多个实例(Instance),一个实例上可以有多个指标(Metric),一个指标只会有一个指标类型(Metric Type)。

Prometheus 快速入门教程(五):Prometheus 的关键概念_prometheus



标签:name,Metric,入门教程,柱状图,指标,Prometheus,实例,关键
From: https://blog.51cto.com/u_13879334/5733982

相关文章

  • Prometheus 快速入门教程(四):PromQL 快速入门
    提到可以针对业务指标做自定义监控,其中有一个设置属性为Metrics,即:这个Metrics属性的值遵守了PromQL规则。我们只要学会了PromQL表达式,就知道了怎么设置这个属性了。......
  • Prometheus 快速入门教程(三):Grafana 图表配置快速入门
    前面我们使用Prometheus+Grafana实现了一个简单的CPU使用率变化图,但是这个图还有许多缺陷,例如:左边栏的数值太小了无法调整,下面的图标信息无法定制化等等。其实Grafa......
  • Prometheus 快速入门教程(二):Prometheus + Grafana实现可视化、告警
    PrometheusUI提供了快速验证PromQL以及临时可视化支持的能力,但其可视化能力却比较弱。一般情况下,我们都用Grafana来实现对Prometheus的可视化实现。什么是GrafanaG......
  • Prometheus 快速入门教程(一):Prometheus 快速入门
    Prometheus是任何一个高级工程师必须要掌握的技能。那么如何从零部署一套Prometheus监控系统呢?本篇文章将从Prometheus的原理讲起,手把手带你用一个最简单的例子部署一......
  • Prometheus 快速入门教程(开篇):为什么要学 Prometheus ?
    第一次接触Prometheus是在去年,我工作了六年的时间点上。但现在看来,工作六年才知道Prometheus是有点晚了,因为Prometheus确实比较重要。个人感觉Prometheus在你3-5......
  • springboot整合prometheus和grafana
    准备springBoot服务pom引入依赖<!--集成micrometer,将监控数据存储到prometheus--><dependency><groupId>io.micrometer</groupId><artifactId>micrometer-r......
  • static 关键字
    基本介绍:  对于局部变量来说:  对于第三点,有:  此时调用 输出如下:n=10n++=11n=10n++=11如果再次调用一次会输出:n=10n++=11n=11n++=12=========......
  • 关键字,缩进,代码块,
    判断语句(JudgmentStatement)是程序的三大语句结构之一。它的作用是根据判断的条件是否成立(真或假),来决定后续代码执行顺序。if后的判断条件通常是一个布尔表达式。即该表......
  • C++ 关键字四种cast类型转换
    1.23四种cast类型转换​作用:克服c中强制类型转化带来的风险,C++引入四种更加安全的强制类型转换运算符(明确转换的目的,偏于程序的维护和分析)const_cast://1.去除const属......
  • 数据结构-关键路径解法思路
    关键路径是有向带权无环图的一种寻求路径的算法,采用四组数据,两组点的,两组边的,表格化后一目了然。分别是:ve(k),vl(k),e(i),l(i)点:k表示点的标识ve:最早发......