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

目标实例状态: up count(up)
查询指标最新样本(称为瞬时向量): node_cpu_seconds_total 可以通过附加一组标签来进一步过来这些时间序列: node_cpu_seconds_total{job="Linux Server"}
查询指标近5分钟内样本(称为范围向量,时间单位 s,m,h,d,w,y): node_cpu_seconds_total{job="Linux Server"}[5m] node_cpu_seconds_total{job="Linux Server"}[1h]
查询cpu0除空闲利用率其他的资源利用率 != 不等于 node_cpu_seconds_total{cpu="0",mode!="idle"}
函数: • irate():计算指标在一定时间间隔内的变化速率 示例: irate(node_cpu_seconds_total{job="Linux Server",mode="system"}[5m]) 查询cpu0空闲利用率在5分钟内的一个变化速率值 irate(node_cpu_seconds_total{cpu="0",mode="idle"}[5m]) 查询整个总的cpu空闲利用率在5分钟内的一个变化速率平均值 avg:平均值 avg(irate(node_cpu_seconds_total{mode="idle"}[5m])) 空闲cpu利用率 avg(irate(node_cpu_seconds_total{mode="idle"}[5m]))*100 使用的cpu利用率 100-(avg(irate(node_cpu_seconds_total{mode="idle"}[5m]))*100) 查询磁盘/分区空闲利用率 node_filesystem_free_bytes{mountpoint="/",fstype=~"ext4|xfs"}/node_filesystem_size_bytes{mountpoint="/",fstype=~"ext4|xfs"}*100 查看磁盘/分区使用率 100-(node_filesystem_free_bytes{mountpoint="/",fstype=~"ext4|xfs"}/node_filesystem_size_bytes{mountpoint="/",fstype=~"ext4|xfs"}*100) 查看192.168.0.12这台机器的几核cpu的空闲利用率和 sum(node_cpu_seconds_total{instance="192.168.0.12:9100",mode="idle"}) 查看192.168.0.12这台机器的几核cpu除空闲利用率的和,也就是几核cpu使用率的和 sum(node_cpu_seconds_total{instance="192.168.0.12:9100",mode!="idle"})
|

