乐闻世界logo
搜索文章和话题

PromQL 常用函数有哪些,如何使用?

2月21日 15:39

PromQL(Prometheus Query Language)是 Prometheus 的查询语言,常用函数包括:

聚合函数

  • sum() - 求和
  • avg() - 平均值
  • max() - 最大值
  • min() - 最小值
  • count() - 计数
  • count_values() - 统计各值出现次数

时间函数

  • rate() - 计算指标在时间窗口内的平均增长率
  • irate() - 计算瞬时增长率(更敏感)
  • increase() - 计算时间窗口内的增量
  • delta() - 计算差值

数学函数

  • abs() - 绝对值
  • ceil() - 向上取整
  • floor() - 向下取整
  • round() - 四舍五入
  • exp() - 指数
  • ln() - 自然对数

预测函数

  • predict_linear() - 基于线性回归预测未来值

示例查询

promql
# 计算 QPS rate(http_requests_total[5m]) # 计算内存使用率 sum(container_memory_usage_bytes) / sum(container_spec_memory_limit_bytes) * 100 # 预测磁盘空间何时耗尽 predict_linear(node_filesystem_avail_bytes[1h], 3600*24) < 0

注意事项:

  • rate()irate() 只能用于 Counter 类型
  • 时间窗口选择影响结果准确性
  • 使用 by 子句进行分组聚合
标签:Prometheus