prometheus专题—(六)普罗米修斯概念介绍

本文涉及的产品
可观测监控 Prometheus 版,每月50GB免费额度
简介: prometheus 基本概念

prometheus 基本概念

在prometheus graph页面上查询数据
node_cpu_seconds_total{mode="user"}
sample 数据点

image.png

sample 数据点

type sample struct {
  t int64
  v float64
}
sample代表一个数据点
size:16byte: 包含 1个8byte int64时间戳和1个8byte float64 value 

image.png

Label 标签

type Label struct {
  Name, Value string
}
一对label 比如 `cpu="0"` `mode: "user"`

image.png

Labels 标签组

type Labels []Label
- 就是metric 一个指标的所有tag values

prometheus四种查询类型

即时向量 Instant vector : 一组时间序列,每个时间序列包含一个样本,所有样本共享相同的时间戳

# 在prometheus页面上就是table查询 ,对应查询接口 /api/v1/query

image.png

vector 向量 
type Vector []Sample
1. - ector 向量,是samples的别名,但是所有sample具有相同timestamp ,常用作instance_query的结果

2.范围向量 Range vector : 一组时间序列,每个时间序列包含一个样本,所有样本共享相同的时间戳

> 在prometheus页面上就是graph查询 ,对应查询接口 /api/v1/query 
> Matrix 矩阵
type Matrix []Series
Matrix是series的切片,一般的range_query返回的结果

image.png

1. 标量 `Scalar` 一个简单的数字浮点值
2. String 一个简单的字符串值;目前未使用

四种标签匹配模式

1. `=` 等于
   - 查询: cpu第一个核并且是用户态的数据  node_cpu_seconds_total{mode="user",cpu="0"}
2. `!=` 不等于
   - 查询: 非lo网卡的接收字节数  node_network_receive_bytes_total{device!="lo"}
3. `=~` 正则匹配
   - 查询: 挂载点以/run开头的文件系统剩余字节数  node_filesystem_avail_bytes{mountpoint=~"^/run.*"}
4. `!~` 正则非匹配
   - 查询: 块设备名字不包含vda的读字节数  node_disk_read_bytes_total{device!~".*vda.*"}

四种数据类型

  • gauge 当前值
node_memory_MemFree_bytes
  • counter 计数器是代表一个累积指标单调递增计数器,其价值只能在重新启动增加或归零。例如,您可以使用计数器来表示已服务请求,已完成任务或错误的数量。
http_request_total
  • histogram 直方图样本观测(通常之类的东西请求持续时间或响应大小)和计数它们配置的桶中。它还提供所有观察值的总和
# http所有接口 总的95分位值
# sum/count 可以算平均值
prometheus_http_request_duration_seconds_sum/ prometheus_http_request_duration_seconds_count
# histogram_quantile(0.95, sum(rate(prometheus_http_request_duration_seconds_bucket[5m])) by (le,handler))
histogram_quantile(0.95, sum(rate(prometheus_http_request_duration_seconds_bucket[1m])) by (le))
# range_query接口的95分位值
histogram_quantile(0.95, sum(rate(prometheus_http_request_duration_seconds_bucket{handler="/api/v1/query_range"}[5m])) by (le))

summary  摘要会采样观察值(通常是请求持续时间和响应大小之类的东西)。尽管它还提供了观测值的总数和所有观测值的总和,但它可以计算滑动时间窗口内的可配置分位数。

# gc耗时
# HELP go_gc_duration_seconds A summary of the pause duration of garbage collection cycles.
# TYPE go_gc_duration_seconds summary
go_gc_duration_seconds{quantile="0"} 0.000135743
go_gc_duration_seconds{quantile="0.25"} 0.000872805
go_gc_duration_seconds{quantile="0.5"} 0.000965516
go_gc_duration_seconds{quantile="0.75"} 0.001055636
go_gc_duration_seconds{quantile="1"} 0.006464756
# summary 平均值
go_gc_duration_seconds_sum /go_gc_duration_seconds_count
- 

范围向量选择器 Range Vector Selectors

- 范围矢量的工作方式与即时矢量一样,不同之处在于它们从当前即时中选择了一定范围的样本。语法上,将持续时间附加在[]向量选择器末尾的方括号()中,以指定应为每个结果范围向量元素提取多远的时间值。
  • 只能作用在counter

     时间范围

ms -毫秒
s -秒
m - 分钟
h - 小时
d -天-假设一天总是24小时
w -周-假设一周始终为7天
y -年-假设一年始终为365天
直接查询报错   node_network_receive_bytes_total{device!="lo"}[1m]
Error executing query: invalid expression type "range vector" for range query, must be Scalar or instant Vector
> 需要叠加一个非聚合函数 如 rate irate delta idelta sum 等
-  计算网卡入流量
  rate(node_network_receive_bytes_total{device!="lo"}[1m])
> > 时间范围 ,不能低于采集间隔
- - 采集30秒 ,查询10秒则无数据
- - rate(node_network_receive_bytes_total{device!="lo"}[10s])


相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
相关文章
|
Prometheus 监控 Cloud Native
Docker的监控-Prometheus(普罗米修斯)
Docker的监控-Prometheus(普罗米修斯)
860 0
|
Prometheus 监控 Cloud Native
Prometheus(普罗米修斯)
Prometheus(普罗米修斯)
897 0
|
存储 数据采集 Prometheus
【云原生监控系列第一篇】一文详解Prometheus普罗米修斯监控系统(山前前后各有风景,有风无风都很自由)(一)
【云原生监控系列第一篇】一文详解Prometheus普罗米修斯监控系统(山前前后各有风景,有风无风都很自由)(一)
1737 0
【云原生监控系列第一篇】一文详解Prometheus普罗米修斯监控系统(山前前后各有风景,有风无风都很自由)(一)
|
存储 Prometheus 监控
Prometheus+Grafana普罗米修斯搭建+监控MySQL
​ `Prometheus` 是 `Cloud Native Computing Foundation` 的一个监控系统项目, 集采集、监控、报警等特点于一体。 ​ `Prometheus`主要受启发于`Google`的`Brogmon`监控系统, 从`2012`年开始由前`Google`工程师在`Soundcloud`以开源软件的形式进行研发,`2017`年底发布了基于全新存储层的`2.0`版本,当前最新版本是`2.44.0`版本。
1158 0
|
存储 数据采集 Prometheus
【云原生监控系列第一篇】一文详解Prometheus普罗米修斯监控系统(山前前后各有风景,有风无风都很自由)(三)
【云原生监控系列第一篇】一文详解Prometheus普罗米修斯监控系统(山前前后各有风景,有风无风都很自由)(三)
622 0
【云原生监控系列第一篇】一文详解Prometheus普罗米修斯监控系统(山前前后各有风景,有风无风都很自由)(三)
|
Prometheus 监控 Cloud Native
【云原生监控系列第一篇】一文详解Prometheus普罗米修斯监控系统(山前前后各有风景,有风无风都很自由)(二)
【云原生监控系列第一篇】一文详解Prometheus普罗米修斯监控系统(山前前后各有风景,有风无风都很自由)(二)
593 0
【云原生监控系列第一篇】一文详解Prometheus普罗米修斯监控系统(山前前后各有风景,有风无风都很自由)(二)
|
存储 Prometheus 监控
Prometheus(普罗米修斯)监控系统
Prometheus(普罗米修斯)是一套开源的监控&报警&时间序列数据库的组合,由 SoundCloud 公司开发。
12188 1
Prometheus(普罗米修斯)监控系统
|
Prometheus 监控 Cloud Native
|
1月前
|
Prometheus 运维 监控
智能运维实战:Prometheus与Grafana的监控与告警体系
【10月更文挑战第26天】Prometheus与Grafana是智能运维中的强大组合,前者是开源的系统监控和警报工具,后者是数据可视化平台。Prometheus具备时间序列数据库、多维数据模型、PromQL查询语言等特性,而Grafana支持多数据源、丰富的可视化选项和告警功能。两者结合可实现实时监控、灵活告警和高度定制化的仪表板,广泛应用于服务器、应用和数据库的监控。
237 3
|
4月前
|
Prometheus 监控 Cloud Native
【监控】prometheus传统环境监控告警常用配置
【监控】prometheus传统环境监控告警常用配置
【监控】prometheus传统环境监控告警常用配置
下一篇
DataWorks