本文为您介绍 Prometheus 时序数据的格式。
Prometheus 会将所有采集到的样本数据以时间序列(time-series)的方式保存在内存数据库中,并且定时保存到硬盘上。时间序列是按照时间戳和值的序列顺序存放的,被称为:向量(vector)。
每条时间序列通过指标名称(metrics name)和一组标签集(labelset)命名。如下所示。
在时间序列中,每一个点称为一个样本(sample),样本由以下三部分组成。
样本示例如下所示。
<--------------- metric ---------------------><---timestamp--><-value-> http_request_total{status="200", method="GET"}@1434417560938 => 94355
指标由 指标名 + 标签(label) 组成,一个指标可以包含多个 label。
<--metric name -->{<label name>=<label value>, ...} prometheus_http_requests_total{status="200", method="GET"}
字段 | 作用 | 示例 | 格式 |
---|---|---|---|
指标名 | 指标反映被监控样本的含义 | node_filesystem_size_bytes (节点文件系统大小) | 指标名称只能由 ASCII 字符、数字、下划线以及冒号组成。并且必须符合正则表达式 |
标签 | 标签反映了当前样本的特征维度,通过这些维度,Prometheus 可以对样本数据进行过滤和汇聚 | node_filesystem_size_bytes{device="/dev/sda1",fstype="ext4",mountpoint="/"} 中
| 标签的名称只能由 ASCII 字符、数字以及下划线组成并满足正则表达式 说明 以 |