Prometheus 基于当前 的 2.30.0 版本共计有 42 个内置函数,按照字母排序分别是:
abs() absent() absent_over_time() ceil() changes() clamp() clamp_max() clamp_min() day_of_month() day_of_week() days_in_month() delta() deriv() exp() floor() histogram_quantile() holt_winters() hour() idelta() increase() irate() label_join() label_replace() ln() log2() log10() minute() month() predict_linear() rate() resets() round() scalar() sgn() sort() sort_desc() sqrt() time() timestamp() vector() year()_over_time()
这些函数还可以按照功能进行分类:
<1> 聚合函数
对指标进行求和、求平均、计数、最大值、最小值、Top 、Bottom、百分位数等数据聚合操作想函数。
sum 函数 avg() 函数 count() 函数 count_values() 函数 min() 函数 max() 函数 stddev() 函数 stdvar() 函数 topk() 函数 bottomk() 函数 quantile() 函数
<2> 类型函数
vector() 函数 scalar() 函数
<3> 数学函数
对指标进行各种数学计算的函数,比如求导、求平方、求开方等等,数学是研究数据的一门科学,不要一对数据进行分析,就求平均数,还是有很多数学方法可以使用的。
abs() 函数 ln() 函数 log2() 函数 log10() 函数 exp() 函数 sqrt() 函数 ceil() 函数 floor() 函数 round() 函数 clamp() 函数 clamp_max() 函数 clamp_min() 函数
<4> 时间函数
对指标的时间进行操作的函数。
minute() 函数 hour() 函数 month() 函数 year() 函数 day_of_month() 函数 day_of_week() 函数 days_in_month() 函数 time() 函数 timestamp() 函数
<5> 标签函数
对指标的标签(label)进行操作的数据。
label_join() 函数 label_replace() 函数
<6> 缺失与排序函数
对数据进行排序、以及是否缺失进行判断的一些函数。
absent() 函数 histogram_quantile() 函数 sort() 函数 sort_desc() 函数
<7> 计数器
针对计数器类型数据的一些函数。
rate 函数 increase() 函数 irate() 函数 resets() 函数
<8> Gauge 类型处理函数
针对 Gauge 类型数据的一些处理函数
changes() 函数 deriv() 函数 predict_linear() 函数 delta() 函数 idelta() 函数 holt_winters() 函数
<9> .
absent_over_time(range-vector) : 如果传递给它的范围向量有任何元素则返回一个空向量,如果传递给它的范围向量没有元素,则返回一个值为 1 的 1 元素向量。 avg_over_time(range-vector) : 区间向量内每个度量指标的平均值。 min_over_time(range-vector) : 区间向量内每个度量指标的最小值。 max_over_time(range-vector) : 区间向量内每个度量指标的最大值。 sum_over_time(range-vector) : 区间向量内每个度量指标的求和。 count_over_time(range-vector) : 区间向量内每个度量指标的样本数据个数。 quantile_over_time(scalar, range-vector) : 区间向量内每个度量指标的样本数据值分位数,φ-quantile (0 ≤ φ ≤ 1)。 stddev_over_time(range-vector) : 区间向量内每个度量指标的总体标准差。 stdvar_over_time(range-vector) : 区间向量内每个度量指标的总体标准方差。
转载请注明:LINUX服务器运维架构技术分享 » Prometheus内置函数分类