美文网首页
PromQL使用

PromQL使用

作者: 阿当运维 | 来源:发表于2021-05-25 15:24 被阅读0次

PromQL(Prometheus Query Language) 是 Prometheus 自己开发的数据查询 DSL 语言,语言表现力
非常丰富,支持条件查询、操作符,并且内建了大量内置函数,供我们针对监控数据的各种维度进行查询.

瞬时向量与范围向量查询

如:
1.目标实例状态:
up

2.查询指标最新样本(称为瞬时向量):
node_cpu_seconds_total


image.png

回车,我们可以看到关于prometheus监控所有主机的数据,这就是瞬时向量


image.png

可以通过附加一组标签来进一步筛选这些时间序列:


image.png

3.查询指标近5分钟内样本(称为范围向量,时间单位 s,m,h,d,w,y):
查询192.168.1.112机器的cpu空闲率百分比
(会用到聚合操作符avg 和函数irate())


image.png
avg(irate(node_cpu_seconds_total{instance="192.168.1.112:9100",mode="idle"}[5m]))*100

avg:求平均值
irate():函数,计算指标在一定时间间隔内的变化速率
*100 : 换算百分比
求使用率再用100-(空闲率表达式)
利用这些表达式直接可以在grafana出图


image.png

常用操作符

image.png

常用promQL收集系统信息公式:

收集系统CPU监控信息

  1 .CPU使用率

  公式:100 - (avg by (instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)

 2 . CPU负载

  公式:

    node_load1     ## 1分钟负载

    node_load5     ##5分钟负载

    node_load15   ##15分钟负载

收集系统内存监控信息

1 内存使用率

  公式:(1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes ))* 100

 2 可用内存(单位:M)

  公式:node_memory_MemAvailable_bytes / 1024 / 1024 

收集系统磁盘监控信息

1 磁盘总大小(单位: G)

  公式:node_filesystem_size_bytes {fstype=~"ext4|xfs"} / 1024 / 1024 / 1024

  2 磁盘剩余大小(单位: G)

  公式:node_filesystem_avail_bytes {fstype=~"ext4|xfs"}  / 1024 / 1024 / 1024

3 磁盘使用率

  公式:(1-(node_filesystem_free_bytes{fstype=~"ext4|xfs"} / node_filesystem_size_bytes{fstype=~"ext4|xfs"})) * 100

收集系统网络监控信息

1. 网卡入网流量 (指定某一个网卡)

  公式:irate(node_network_receive_bytes_total{device='ens32'}[5m])

2. 网卡出网流量(指定某一个网卡)

  公式:irate(node_network_transmit_bytes_total{device='ens32'}[5m])

说明:收集系统各信息,都是通过node_exporter服务进行数据的收集,然后通过prometheus内置的PromQL语句进行组合查询,对于每一个公式,都可以在prometheus WEB界面测试查询。

相关文章

  • PromQL使用

    PromQL(Prometheus Query Language) 是 Prometheus 自己开发的数据查询 ...

  • PromQL的简单使用

    一、背景 在prometheus中存在各种时间序列数据,那么我们如何根据时间序列查询想要的数据呢?promethe...

  • Prometheus简单使用--promQL,QPS

    Prometheus的简单配置,如下: global的配置会应用到每个job中,但是可以被job覆盖 1. 查询服...

  • PromQL

    基本信息 http_requests_total{job="prometheus",group="canary"}...

  • promQL

    一,简单运算 1,查看三台机器的总内存 三台机器为master,和2台node节点,总内存为3G 2,查看可用内存...

  • PromQL

    PromQL的四种数据类型 瞬时向量(Instant vector):一组时间序列,每个时间序列包含单个样本,它们...

  • grafana

    PromQL 空闲的cpu指标 除空闲之外的其他指标 192.168.153.21 的cpu使用率 标签管理 自定...

  • Prometheus 查询语言

    [TOC] Prometheus 查询语言 PromQL(Prometheus Query Language)是 ...

  • 小团队从0搭建devOPS平台--Prometheus Prom

    Prometheus 的强大离不开功臣:PromQL (Prometheus Query Language) ,它...

  • 【深度知识】5.Prometheus-PromQL查询监控数据和

    1. 摘要 PromQL (Prometheus Query Language) 是 Prometheus 自己开...

网友评论

      本文标题:PromQL使用

      本文链接:https://www.haomeiwen.com/subject/kznxsltx.html