promql语法大全
时间: 2024-06-08 21:04:20 浏览: 185
PromQL是Prometheus的查询语言,用于查询监控数据。以下是PromQL语法的大全:
1. 基本查询
- metric_name:指标名称,如node_cpu_seconds_total
- time_range:时间范围,如5m、1h等
- 示例:metric_name{label_selector}[time_range]
2. 范围查询
- range vector selector:范围向量选择器,用于选择一段时间范围内的数据,如node_cpu_seconds_total{job="node-exporter"}[5m]
- offset modifier:偏移量修饰符,用于从当前时间向前或向后偏移一段时间,如node_cpu_seconds_total{job="node-exporter"}[5m] offset 1h
3. 聚合查询
- sum():求和函数
- avg():求平均值函数
- max():求最大值函数
- min():求最小值函数
- count():统计样本数函数
- topk():取出前k个样本函数
- bottomk():取出后k个样本函数
- 示例:sum(metric_name{label_selector}) by (label_name)
4. 算术运算
- +:加法运算
- -:减法运算
- *:乘法运算
- /:除法运算
- %:取模运算
5. 逻辑运算
- and:逻辑与运算
- or:逻辑或运算
- unless:逻辑非运算
6. 布尔表达式
- ==:判断是否相等
- !=:判断是否不相等
- >、>=、<、<=:比较运算符
7. 函数操作符
- rate():计算速率函数
- irate():计算瞬时速率函数
- deriv():计算导数函数
- predict_linear():线性预测函数
- holt_winters():Holt-Winters函数
8. 子查询
- 子查询可以在大括号中嵌套另一个查询语句,如sum(rate(node_cpu_seconds_total{job="node-exporter"}[5m])) by (instance)
以上就是PromQL语法的大全,你可以根据需要选择相应的语法来进行查询。如果还有其他问题,请继续提问。
阅读全文