Prometheus 内置函数:clamp() 用于将向量中的每个样本值限制在指定的最小值和最大值之间

clamp() 函数是一个向量函数,用于将向量中的每个样本值限制在指定的最小值和最大值之间。如果样本值小于最小值,则将其设置为最小值;如果样本值大于最大值,则将其设置为最大值;如果样本值在最小值和最大值之间,则保持不变。

作用

clamp() 函数是一个向量函数,用于将向量中的每个样本值限制在指定的最小值和最大值之间。如果样本值小于最小值,则将其设置为最小值;如果样本值大于最大值,则将其设置为最大值;如果样本值在最小值和最大值之间,则保持不变。

clamp() 函数在 Prometheus 中通常用于数据清洗或准备数据以进行可视化,以确保数据的范围符合特定的需求或期望。在处理可能包含异常值的指标时,这个函数特别有用。

语法

clamp() 函数的语法如下:

clamp(v instant-vector, min scalar, max scalar)

参数说明:

  • v range-vector: 是要限制值范围的向量。

  • low: 是设定的最小值。

  • high: 是设定的最大值。

示例

假设你有一个名为 prometheus_http_requests_total 的指标,它记录了 HTTP 请求的总数,你希望将这个指标的值限制在 10 到 100 之间,以避免因异常高的值导致的图表显示问题或警报误报。你可以使用以下 PromQL 查询来实现这一点:

clamp(prometheus_http_requests_total, 10, 100)

这将返回一个新的向量,其中 prometheus_http_requests_total 的每个样本值都被限制在 10 到 100 之间。

如果原始值小于 10,则结果为 10。

如果原始值大于 100,则结果为 100。

如果原始值在 10 到 100 之间,则结果保持不变。

示例:

Prometheus 内置函数:clamp()

Prometheus 内置函数:clamp()

不傲才以骄人,不以宠而作威。——诸葛亮
0 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号