prometheus-promQL

文章详细介绍了如何使用Prometheus监控系统的内存、磁盘IO和HTTP请求,包括计算空闲内存、磁盘读写、HTTP返回状态以及各种函数如rate、irate、increase、sum、avg等的用法。
摘要由CSDN通过智能技术生成
运算Value
+加法
-减法
*乘法
/除法
%求余
^幂运算
==相等
!==不相等
>大于
<小于
>==大于等于
<==小于等于
and并且
or或者
unless排除
以MB方式获取当前主机空闲内存空间
node_memory_free_bytes_total / (1024 * 1024)
磁盘读+写计算磁盘io的byte数值
node_disk_written_bytes_total + node_disk_read_bytes_total 
计算空闲内存百分比(总-空闲 / 总)
(node_memory_MemTotal_bytes - node_memory_MemFree_bytes) / node_memory_MemTotal_bytes
计算空闲内存百分比并大于0.95
(node_memory_MemTotal_bytes - node_memory_MemFree_bytes) / node_memory_MemTotal_bytes > 0.95
http返回大于30并使用布偶0/1表示,0表示不满足 1表示满足
prometheus_http_requests_total > bool 30

rate()函数: 计算每秒平均增长率 范围向量中的时间序列(每秒)

表示每个时间序列5分钟内http每秒的增长率
rate(prometheus_http_requests_total[5m])

irate()函数: 通过区间中最后两个两本数据来计算区间向量的增长速率

表示时间序列5分钟内最后两个样本数据http每秒的增长率
irate(prometheus_http_requests_total[5m])

increase()函数: 获取区间向量中的第一个和最后一个样本并返回其增长量(每分钟)

1分钟内request的增长率
increase(prometheus_http_requests_total[1m])

sum()函数: 求和操作

表示对整个http样本求和
sum(prometheus_http_requests_total)

表示对整个http样本求和并*显示* 指定by () 后面的标签
sum(prometheus_http_requests_total) by (code)

表示对整个http样本求和并*移除* 指定without () 后面的标签
sum(prometheus_http_requests_total) without (code)

avg()函数: 总返回组值的平均值

获取主机=109每核cpu平均值
avg(node_cpu_seconds_total{instance='10.1.74.109:9100'}) without (cpu)

avg_over_time()函数: 区间向量内每个度量指标的平均值

每条返回请求的平均值,avg是总的一个平均
avg_over_time(prometheus_http_requests_total[1h])

count()函数: 计数

获取主机=109 磁盘为vd开头的数量
count(node_disk_read_bytes_total{device=~"vd.*",instance='10.1.74.109:9100'}) by (device)

topk()函数: 最大排序

返回文件系统最大的2序列
topk(2,node_filesystem_size_bytes)

bottomk()函数: 最小排序

返回文件系统最小的3序列
bottomk(3,node_filesystem_size_bytes)

vector()函数: 将标量 作为没有标签的向量返回
scalar()函数: 返回一个单元素瞬时向量的样本值
sort()函数: 升序

空闲内存升序
sort(node_memory_MemFree_bytes)

sort_desc()函数: 降序

空闲内存将序
sort_desc(node_memory_MemFree_bytes)

ceil()函数: 四舍五入为整数

将cpu各种时间占用空间表示为整数
ceil(node_cpu_seconds_total)

time()函数: 返回时间戳
minute()函数: 返回当前小时的多少分钟
hour()函数: 返回给定时间一天的小时
month()函数: 返回当前月份
year()函数: 返回当前年份
day_of_month()函数: 返回当前月份第几天1-31
day_of_week()函数: 返回当前所在周的第几天0-7

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值