运算 | 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