PromQL(Prometheus Query Language)为Prometheus tsdb的查询语言。是结合grafana进行数据展示和告警规则的配置的关键部分。
四种指标类型
1、counter(计数器):Counter (只增不减的计数器) 类型的指标其工作方式和计数器一样,只增不减。常见的监控指标,如 http_requests_total、 node_cpu_seconds_total 都是 Counter 类型的监控指标。
2、gauge (仪表类型):与 Counter 不同, Gauge(可增可减的仪表盘)类型的指标侧重于反应系统的当前状态。因此这类指标的样本数据可增可减。常见指标如:node_memory_MemFree_bytes(主机当前空闲的内存大小)、 node_memory_MemAvailable_bytes(可用内存大小)都是 Gauge 类型的监控指标。
3、Histogram(直方图类型) 和 Summary(摘要类型):除了 Counter 和 Gauge 类型的监控指标以外,Prometheus 还定义了 Histogram 和 Summary 的指标类型。Histogram 和 Summary 主用用于统计和分析样本的分布情况。
表达式四种数据类型:
1、瞬时向量(Instant vector):一组时间序列,每个时间序列包含单个样本,它们共享相同的时间戳。也就是说,表达式的返回值中只会包含该时间序列中最新的一个样本值。
2、区间向量(Range vector):一组时间序列,每个时间序列包含一段时间范围内的样本数据。
3、标量(Scalar):一个浮点型的数据值,没有时序。需要注意的是,使用表达式count(http_requests_total)返回的数据类型依然是瞬时向量,用户可以通过内置函数scalar()将单个瞬时向量转换为标量。
4、字符串(String):一个简单的字符串值。字符串可以用单引号、双引号或反引号来指定。
时间序列(向量)
数据采集以特定的时间周期进行,因而,随着时间流逝,将这些样本数据记录下来,将生成一个离散的样本数据序列。
该序列也称为向量(Vector),以时间轴为横坐标、序列为纵坐标,这些数据点连接起来就会形成一个矩阵。
PromQL 的强大之处在于它能够让用户以声明式的方式查询和处理大量的时间序列数据,非常适合实时监控和警报系统。
通过 PromQL,用户可以在 Prometheus 的 Web UI、Grafana 或其他支持 Prometheus 查询的客户端中执行复杂的数据分析和可视化。
往期推荐:
- 一文带你了解什么是CNCF&云原生
- Kubernetes(k8s)从入门到实战全套教程
- 全网最全 docker 和 k8s 工作中常用命令手册
- Hadoop HA on k8s 快速部署
- 【云原生】zookeeper + kafka on k8s 环境部署
- 【云原生】Presto/Trino on k8s 环境部署
- 【云原生】Azkaban on k8s 讲解与实战操作
- 【云原生】Flink on k8s 讲解与实战操作
- 【云原生】Spark on k8s 讲解与实战操作
- 【云原生】Elasticsearch + Kibana on k8s 讲解与实战操作
- 【云原生】k8s 管理平台 rancher
- 【云原生】Prometheus+Grafana on K8s 环境部署
- 通过 docker-compose 快速部署 Hadoop 集群极简教程
- 通过 docker-compose 快速部署 Hive 详细教程
- 【大数据】通过 docker-compose 快速部署 Presto(Trino)保姆级教程
- 通过 docker-compose 快速部署 Apache Ambari 保姆级教程
- 通过 docker-compose 快速部署 DolphinScheduler 保姆级教程
关注我微信公众号:大数据与云原生技术分享,获取大数据、k8s等整套学习资料,如本篇文章对您有所帮助,麻烦帮忙一键三连(点赞、转发、收藏)~