202503111455 – 什么是 Prometheus

Grafana OSS and Enterprise | Grafana documentation

202503111455 - 什么是 Prometheus

Prometheus的时间序列数据

202503111455 - 什么是 Prometheus

想象你有一个笔记本,你每隔5分钟记录一下房间的温度。一段时间后,你的笔记本上会有很多记录:

  • 9:00 AM – 22°C
  • 9:05 AM – 22.5°C
  • 9:10 AM – 23°C
  • 9:15 AM – 24°C …以此类推

这就是最基本的时间序列数据!它由两部分组成:时间戳(什么时候测量的)和测量值(测量到的数字)。

Prometheus如何使用时间序列数据

Prometheus就像是一个超级版的这种笔记本。它不只记录一个房间的温度,而是可以同时记录成百上千台电脑的各种状态,比如:

  • CPU使用率多少?
  • 内存还剩多少?
  • 网络传输了多少数据?
  • 磁盘写入了多少字节?

每一个测量项目在Prometheus中称为一个"指标"(metric)。每个指标都会随着时间推移不断收集新的数据点。

Prometheus的秘密武器:标签

除了记录时间和数值,Prometheus还有个强大的功能:给数据贴标签。

回到温度记录的例子,假设你不只记录一个房间的温度,而是记录整栋楼的温度。这时你需要知道每个温度读数来自哪个房间。在Prometheus中,你可以给每个测量值添加标签(labels):

  • 9:00 AM – 22°C – {房间="客厅", 楼层="一楼"}
  • 9:00 AM – 20°C – {房间="卧室", 楼层="二楼"}
  • 9:00 AM – 18°C – {房间="地下室", 楼层="负一楼"}

这些标签让你可以非常灵活地查询和筛选数据。比如,你可以:

  • 只看一楼所有房间的温度
  • 比较所有卧室的温度差异
  • 查看地下室温度的变化趋势

三种主要的指标类型

Prometheus支持三种主要的指标类型,适合不同场景:

  1. Counter(计数器):只会增加不会减少的数字,比如总共写入磁盘的字节数、处理的请求总数。就像汽车的里程表,只会随着行驶增加,不会减少。
  2. Gauge(仪表盘):可增可减的数字,表示当前状态,比如当前CPU使用率、当前内存使用量。就像汽车的速度表,可能现在是60km/h,等会儿可能降到40km/h。
  3. Histogram(直方图):用于统计数据分布情况,比如请求处理时间的分布。它会自动将数据分组,告诉你有多少请求处理时间在0-10ms之间,有多少在10-30ms之间,等等。

为什么时间序列数据如此有用?

通过这些时间序列数据,你可以:

  • 观察趋势:磁盘空间是否正在快速减少?
  • 发现异常:CPU使用率突然飙升了?
  • 进行预测:按照当前增长速度,何时需要增加存储空间?
  • 设置警报:当内存使用超过90%时自动通知管理员

Prometheus的时间序列数据就像是一个超级记事本,它不断记录各种系统指标随时间的变化,并通过标签系统让你能灵活地查询和分析这些数据,从而帮助你了解系统的健康状况,及时发现并解决问题。

Java

SpringBoot 系列教程(16章节全-上篇)

2023-8-16 22:57:32

AI 知识库

GPT4o 制作科研论文结构图教程

2025-3-28 15:52:26